@needle-tools/engine 2.65.0-pre → 2.65.1-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.
@@ -17,11 +17,13 @@ export declare class EngineElement extends HTMLElement implements INeedleEngineC
17
17
  private _overlay_ar;
18
18
  private _loadingProgress01;
19
19
  private _loadingView?;
20
+ private _previousSrc;
20
21
  constructor();
21
22
  connectedCallback(): Promise<void>;
22
23
  disconnectedCallback(): void;
23
24
  static get observedAttributes(): string[];
24
25
  attributeChangedCallback(name: string, _oldValue: string, newValue: string): void;
26
+ private _isCurrentlySettingsSourceAttribute;
25
27
  private onLoad;
26
28
  private registerEventFromAttribute;
27
29
  getAROverlayContainer(): HTMLElement;
@@ -54,6 +54,7 @@ export class EngineElement extends HTMLElement {
54
54
  _overlay_ar;
55
55
  _loadingProgress01 = 0;
56
56
  _loadingView;
57
+ _previousSrc = null;
57
58
  constructor() {
58
59
  super();
59
60
  this._overlay_ar = new AROverlayHandler();
@@ -65,7 +66,7 @@ export class EngineElement extends HTMLElement {
65
66
  console.dir(this);
66
67
  }
67
68
  this.onSetupDesktop();
68
- const src = this.getAttribute("src");
69
+ const src = this.getAttribute("src") ?? globalThis["needle:codegen_files"];
69
70
  if (src && src.length > 0) {
70
71
  await this.onLoad(src, true);
71
72
  }
@@ -131,7 +132,14 @@ export class EngineElement extends HTMLElement {
131
132
  break;
132
133
  }
133
134
  }
135
+ _isCurrentlySettingsSourceAttribute = false;
134
136
  async onLoad(src, isStartup) {
137
+ if (this._isCurrentlySettingsSourceAttribute) {
138
+ return;
139
+ }
140
+ if (src === this._previousSrc) {
141
+ return;
142
+ }
135
143
  if (!src || !src.length) {
136
144
  console.error("Needle Engine: No source specified", src);
137
145
  return;
@@ -140,6 +148,11 @@ export class EngineElement extends HTMLElement {
140
148
  console.error("Needle Engine: Context not initialized");
141
149
  return;
142
150
  }
151
+ this._previousSrc = src;
152
+ // Set the source attribute so codegen doesnt try to re-assign it again and we communicate to the outside which root files are being loaded
153
+ this._isCurrentlySettingsSourceAttribute = true;
154
+ this.setAttribute("src", src?.toString());
155
+ this._isCurrentlySettingsSourceAttribute = false;
143
156
  const alias = this.getAttribute("alias");
144
157
  this.classList.add("loading");
145
158
  if (debug)
@@ -162,13 +175,22 @@ export class EngineElement extends HTMLElement {
162
175
  if (debug)
163
176
  console.log(src);
164
177
  let filesToLoad;
165
- if (src.startsWith("[") && src.endsWith("]")) {
178
+ // When using globalThis the src is an array already
179
+ if (Array.isArray(src)) {
180
+ filesToLoad = src;
181
+ }
182
+ // When assigned from codegen the src is a stringified array
183
+ else if (src.startsWith("[") && src.endsWith("]")) {
166
184
  filesToLoad = JSON.parse(src);
167
185
  }
186
+ // src.toString for an array produces a comma separated list
187
+ else if (src.includes(",")) {
188
+ filesToLoad = src.split(",");
189
+ }
168
190
  else
169
191
  filesToLoad = [src];
170
192
  let loadFunction = null;
171
- if (typeof src === "string") {
193
+ if (filesToLoad?.length > 0) {
172
194
  loadFunction = async (ctx) => {
173
195
  let hash = 0;
174
196
  if (ctx.hash)
@@ -214,7 +236,7 @@ export class EngineElement extends HTMLElement {
214
236
  };
215
237
  }
216
238
  if (!loadFunction) {
217
- console.error("Needle Engine: No load function found", src);
239
+ console.error("Needle Engine: No files to load", src);
218
240
  return;
219
241
  }
220
242
  const currentHash = this.getAttribute("hash");
@@ -1 +1 @@
1
- {"version":3,"file":"engine_element.js","sourceRoot":"","sources":["../../../src/engine/engine_element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA8D,MAAM,gBAAgB,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAuB,MAAM,0BAA0B,CAAC;AACvG,OAAO,EAAS,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,GAAG;AACH,0FAA0F;AAC1F,cAAc,CAAC,gBAAgB,CAAC,CAAC;AAEjC,MAAM,KAAK,GAAG,QAAQ,CAAC,mBAAmB,CAAC,CAAC;AAE5C,MAAM,WAAW,GAAG,eAAe,CAAC;AACpC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAClC,MAAM,yBAAyB,GAAG,SAAS,CAAC;AAC5C,MAAM,YAAY,GAAG,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,yBAAyB,CAAC,CAAC;AAC7F,MAAM,wBAAwB,GAAG,mBAAmB,CAAC;AACrD,MAAM,6BAA6B,GAAG,wBAAwB,CAAC;AAE/D,+EAA+E;AAC/E,MAAM,OAAO,aAAc,SAAQ,WAAW;IAE1C,IAAW,iBAAiB,KAAa,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC1E,IAAW,eAAe,KAAc,OAAO,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC,CAAC;IAE/E,IAAW,cAAc;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;QAClD,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC;QACxF,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YAC7B,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,eAAe,EAAE;gBACvC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACtB;iBACI;gBACD,MAAM,EAAE,GAAG,GAAG,EAAE;oBACZ,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;oBAC7C,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,eAAe,EAAE;wBACvC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBACtB;gBACL,CAAC,CAAC;gBACF,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;aAC7C;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE9C,2BAA2B;IAC3B,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,qCAAqC;IAC7B,UAAU,GAAG,UAAU,CAAC;IAChC,qCAAqC;IAC7B,UAAU,GAAG,UAAU,CAAC;IAExB,QAAQ,CAAU;IAClB,WAAW,CAAmB;IAC9B,kBAAkB,GAAW,CAAC,CAAC;IAC/B,YAAY,CAAuB;IAE3C;QACI,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,WAAW,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,OAAO,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,iBAAiB;QACnB,IAAI,KAAK,EAAE;YACP,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SACrB;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACvB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SAChC;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,oBAAoB;QAChB,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,KAAK,kBAAkB;QACzB,OAAO;YACH,MAAM;YACN,KAAK;YACL,iBAAiB;YACjB,WAAW;YACX,UAAU;YACV,cAAc;YACd,kBAAkB;YAClB,kBAAkB;YAClB,iBAAiB;SACpB,CAAC;IACN,CAAC;IAED,wBAAwB,CAAC,IAAY,EAAE,SAAiB,EAAE,QAAgB;QACtE,yCAAyC;QACzC,QAAQ,IAAI,EAAE;YACV,KAAK,KAAK;gBACN,IAAI,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,OAAO,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;gBAC7G,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBAC7B,4CAA4C;gBAC5C,MAAM;YACV,KAAK,MAAM;gBACP,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACf,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC;iBACjC;gBACD,MAAM;YACV,KAAK,WAAW,CAAC;YACjB,KAAK,UAAU,CAAC;YAChB,KAAK,cAAc;gBACf,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;oBACrD,IAAI,KAAK;wBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,oBAAoB,EAAE,QAAQ,CAAC,CAAC;oBAC9D,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;iBACnD;gBACD,MAAM;YACV,KAAK,kBAAkB;gBACnB,IAAI,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;gBACrD,mBAAmB,CAAC,QAAQ,CAAC,CAAC;gBAC9B,MAAM;YACV,KAAK,kBAAkB;gBACnB,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,IAAI,EAAE;oBAC1C,IAAI,KAAK;wBAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;oBACrD,mBAAmB,CAAC,QAAQ,CAAC,CAAC;iBACjC;;oBACI,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;gBAChF,MAAM;YACV,KAAK,iBAAiB;gBAClB,IAAI,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;gBACpD,qBAAqB,CAAC,QAAQ,CAAC,CAAC;gBAChC,MAAM;SACb;IACL,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,GAAkB,EAAE,SAAkB;QACvD,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;YACrB,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;YACzD,OAAO;SACV;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChB,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;YACxD,OAAO;SACV;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9B,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAGpE,uBAAuB;QACvB,MAAM,6BAA6B,GAAG,IAAI,CAAC;QAC3C,uFAAuF;QACvF,MAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,WAAW,EAAE;YACtE,MAAM,EAAE;gBACJ,OAAO,EAAE,IAAI,CAAC,QAAQ;gBACtB,KAAK,EAAE,KAAK;aACf;YACD,UAAU,EAAE,6BAA6B;SAC5C,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,iBAAiB;YACvC,IAAI,CAAC,YAAY,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,iBAAiB;YACjB,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;QACpD,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,WAA0B,CAAC;QAC/B,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC1C,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACjC;;YACI,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;QAEzB,IAAI,YAAY,GAAQ,IAAI,CAAC;QAE7B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YACzB,YAAY,GAAG,KAAK,EAAE,GAAY,EAAE,EAAE;gBAClC,IAAI,IAAI,GAAG,CAAC,CAAC;gBACb,IAAI,GAAG,CAAC,IAAI;oBAAE,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;gBAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACzC,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;oBAC3B,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;oBACrC,MAAM,QAAQ,GAAwB;wBAClC,IAAI,EAAE,QAAQ;wBACd,QAAQ,EAAE,IAAK;wBACf,KAAK,EAAE,CAAC;wBACR,KAAK,EAAE,WAAW,CAAC,MAAM;qBAC5B,CAAC;oBACF,MAAM,iBAAiB,GAAG;wBACtB,MAAM,EAAE;4BACJ,OAAO,EAAE,GAAG;4BACZ,IAAI,EAAE,QAAQ;4BACd,QAAQ,EAAE,QAAQ,CAAC,QAAQ;4BAC3B,KAAK,EAAE,CAAC;4BACR,KAAK,EAAE,WAAW,CAAC,MAAM;4BACzB,eAAe,EAAE,IAAI,CAAC,kBAAkB;yBAC3C;qBACJ,CAAA;oBACD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE;wBAC5D,gBAAgB;wBAChB,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;wBACzB,IAAI,CAAC,kBAAkB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;wBACxD,8BAA8B;wBAC9B,IAAI,iBAAiB;4BAAE,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;wBACpE,iBAAiB;wBACjB,iBAAiB,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;wBACzC,iBAAiB,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC;wBACnE,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC;oBACvE,CAAC,CAAC,CAAC;oBACH,MAAM,GAAG,GAAG,GAAG,EAAE,KAAK,CAAC;oBACvB,IAAI,GAAG;wBAAE,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;iBAChD;gBACD,IAAI,CAAC,SAAS;oBACV,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAC/B,CAAC,CAAC;SACL;QACD,IAAI,CAAC,YAAY,EAAE;YACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,GAAG,CAAC,CAAC;YAC5D,OAAO;SACV;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,WAAW,KAAK,IAAI,IAAI,WAAW,KAAK,SAAS;YACjD,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC;QACrC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;YACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;aAC1C;YACD,MAAM,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACrC;QAKD,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAC5B,IAAI,iBAAiB;YACjB,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;QAC3D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACvC,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,cAAc,EAAE;YAC/C,MAAM,EAAE;gBACJ,OAAO,EAAE,IAAI,CAAC,QAAQ;gBACtB,GAAG,EAAE,KAAK,IAAI,GAAG;aACpB;SACJ,CAAC,CAAC,CAAC;IACR,CAAC;IAEO,0BAA0B,CAAC,SAAiB,EAAE,IAAY;QAC9D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7C,qEAAqE;YACrE,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;YAC3B,qCAAqC;YACrC,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE;gBAC1B,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;aACrF;SACJ;IACL,CAAC;IAED,qBAAqB;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,qBAAqB;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC3C,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAgB,CAAC;YAC3C,IAAI,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC3B,OAAO,EAAE,CAAC;SACjB;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,OAAkB,EAAE,gBAA6B;QACvD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,QAAS,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACpE,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;IAC5J,CAAC;IAED,QAAQ,CAAC,OAAkB;QACvB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,QAAS,CAAC,CAAC;QACvC,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3J,CAAC;IAED,SAAS,CAAC,OAAkB;QACxB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9G,CAAC;IAED,QAAQ,CAAC,OAAkB;QACvB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IAC7G,CAAC;IAEO,SAAS;QACb,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC;QACrD,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACjD,IAAI,WAAW,EAAE;YACb,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;YACpD,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC;IACvF,CAAC;IAEO,SAAS;QACb,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC;QACrD,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC;IACvF,CAAC;IAEO,cAAc;QAClB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACjD,IAAI,WAAW,EAAE;YACb,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;YACvD,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;SAC5D;QACD,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,yBAAyB,CAAC,CAAC,CAAC;IAC5F,CAAC;IAEO,oBAAoB,CAAC,EAAe,EAAE,kBAA0B,EAAE,WAA6B,IAAI;QACvG,IAAI,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU;YAAE,OAAO;QACtD,IAAI,EAAE,CAAC,EAAE,KAAK,UAAU,IAAI,EAAE,CAAC,EAAE,KAAK,UAAU;YAAE,OAAO;QACzD,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;QAC/B,2BAA2B;QAC3B,4BAA4B;QAC5B,6BAA6B;QAC7B,qEAAqE;QACrE,+BAA+B;QAC/B,uCAAuC;QAEvC,MAAM,SAAS,GAAG,EAAE,CAAC,SAAS,CAAC;QAC/B,IAAI,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;YACxC,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;YAChC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,MAAM;gBAC3B,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;SAClC;aACI;YACD,wFAAwF;YACxF,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE;gBAC9B,IAAI,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBAC9B,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;oBAC/B,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;iBAC7B;aACJ;SACJ;IACL,CAAC;IAEO,kBAAkB,CAAC,EAAyB;QAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC3C,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAgB,CAAC;YAC3C,IAAI,EAAE,CAAC,KAAK;gBAAE,EAAE,CAAC,EAAE,CAAC,CAAC;SACxB;IACL,CAAC;IAEO,oBAAoB;QACxB,MAAM,sBAAsB,GAAG,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;QACrE,IAAI,sBAAsB,EAAE;YACxB,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,sBAAsB,CAAC,CAAC;YAClF,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;SAC/C;QACD,MAAM,sBAAsB,GAAG,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;QACrE,IAAI,sBAAsB,EAAE;YACxB,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,sBAAsB,CAAC,CAAC;YAClF,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;SAC/C;QACD,MAAM,qBAAqB,GAAG,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;QACnE,IAAI,qBAAqB,EAAE;YACvB,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,qBAAqB,CAAC,CAAC;YAChF,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;SAChD;IACL,CAAC;CACJ;AAED,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC;IACvC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;AAS7D,SAAS,iBAAiB,CAAC,GAAW;IAClC,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACjC,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;KACnD;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACnC,gBAAgB;IAChB,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,KAAK,GAAG,CAAC;QACT,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"engine_element.js","sourceRoot":"","sources":["../../../src/engine/engine_element.ts"],"names":[],"mappings":"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"}
@@ -74,14 +74,18 @@ function insertNonCommercialUseHint(ctx) {
74
74
  async function logNonCommercialUse(_logo) {
75
75
  const logo = "data:image/webp;base64,UklGRrABAABXRUJQVlA4WAoAAAAQAAAAHwAAHwAAQUxQSKEAAAARN6CmbSM4WR7vdARON11EBDq3fLiNbVtVzpMCPlKAEzsx0Y/x+Ovuv4dn0EFE/ydAvz6YggXzgh5sVgXM/zOC/4sii7qgGvB5N7hmuQYwkvazWAu1JPW41FXSHq6pnaQWvqYH18Fc0j1hO/BFTtIeSBlJi5w6qIIO7IOrwhFsB2Yxukif0FTRLpXswHR8MxbslKe9VZsn/Ub5C7YFOpqSTABWUDgg6AAAAFAGAJ0BKiAAIAA+7VyoTqmkpCI3+qgBMB2JbACdMt69DwMIQBLhkTO6XwY00UEDK6cNIDnuNibPf0EgAP7Y1myuiQHLDsF/0h5unrGh6WAbv7aegg2ZMd3uRKfT/3SJztcaujYfTvMXspfCTmYcoO6a+vhC3ss4M8uM58t4siiu59I4aOl59e9Sr6xoxYlHf2v+NnBNpJYeJf8jABQAId/PXuBkLEFkiCucgSGEcfhvajql/j3reCGl0M5/9gQWy7ayNPs+wlvIxFnNfSlfuND4CZOCyxOHhRqOmHN4ULHo3tCSrUNvgAA=";
76
76
  const style = `
77
- font-size:18px;
78
- background-size: contain;
79
- background-position: left center;
77
+ font-size: 18px;
78
+ background-size: 20px;
79
+ background-position: left top;
80
80
  background-repeat:no-repeat;
81
- background-image:url('${logo}')
81
+ background-image:url('${logo}');
82
+ background-max-size: 40px;
83
+ padding-left: 30px;
84
+ margin-bottom: 2px;
85
+ margin-bottom: 5px;
82
86
  `;
83
87
  let licenseText = "Needle Engine — non commercial version";
84
- console.log("%c " + licenseText, style);
88
+ console.log("%c" + licenseText, style);
85
89
  }
86
90
  function createLicenseElement() {
87
91
  const licenseElement = document.createElement("div");
@@ -1 +1 @@
1
- {"version":3,"file":"engine_license.js","sourceRoot":"","sources":["../../../src/engine/engine_license.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_license.js","sourceRoot":"","sources":["../../../src/engine/engine_license.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Behaviour } from "./Component";
1
+ import { Behaviour, GameObject } from "./Component";
2
2
  import * as THREE from "three";
3
3
  import { MainModule, EmissionModule, ShapeModule, ColorOverLifetimeModule, SizeOverLifetimeModule, NoiseModule, IParticleSystem, ParticleSystemRenderMode, TrailModule, VelocityOverLifetimeModule, TextureSheetAnimationModule, RotationOverLifetimeModule, LimitVelocityOverLifetimeModule, RotationBySpeedModule, InheritVelocityModule, SizeBySpeedModule, ColorBySpeedModule } from "./ParticleSystemModules";
4
4
  import { Matrix4, Mesh, Object3D, Quaternion, SpriteMaterial, Vector3 } from "three";
@@ -10,18 +10,14 @@ export declare enum SubEmitterType {
10
10
  Trigger = 3,
11
11
  Manual = 4
12
12
  }
13
- export declare class SubEmitterSystem {
14
- particleSystem?: ParticleSystem;
15
- emitProbability: number;
16
- properties?: number;
17
- type?: SubEmitterType;
18
- _deserialize(context: Context): void;
19
- }
20
13
  export declare class ParticleSystemRenderer extends Behaviour {
21
14
  renderMode?: ParticleSystemRenderMode;
22
15
  particleMaterial?: SpriteMaterial;
23
16
  trailMaterial?: SpriteMaterial;
24
17
  particleMesh?: Mesh | string;
18
+ maxParticleSize: number;
19
+ minParticleSize: number;
20
+ start(): void;
25
21
  get transparent(): boolean;
26
22
  getMaterial(trailEnabled?: boolean): THREE.SpriteMaterial | undefined;
27
23
  getMesh(renderMode?: ParticleSystemRenderMode): THREE.Mesh<THREE.BufferGeometry, THREE.SpriteMaterial>;
@@ -84,6 +80,7 @@ export declare class ParticleSystem extends Behaviour implements IParticleSystem
84
80
  /** called from deserialization */
85
81
  private set subEmitterSystems(value);
86
82
  private _subEmitterSystems?;
83
+ onAfterDeserialize(_: any): void;
87
84
  awake(): void;
88
85
  start(): void;
89
86
  onDestroy(): void;
@@ -94,3 +91,10 @@ export declare class ParticleSystem extends Behaviour implements IParticleSystem
94
91
  private onUpdate;
95
92
  private addSubParticleSystems;
96
93
  }
94
+ export declare class SubEmitterSystem {
95
+ particleSystem?: ParticleSystem;
96
+ emitProbability: number;
97
+ properties?: number;
98
+ type?: SubEmitterType;
99
+ _deserialize(context: Context, _gameObject: GameObject): void;
100
+ }
@@ -20,6 +20,7 @@ import { createFlatTexture } from "../engine/engine_shaders";
20
20
  import { Mathf } from "../engine/engine_math";
21
21
  import { ParticleSubEmitter } from "./ParticleSystemSubEmitter";
22
22
  import { NEEDLE_progressive } from "../engine/extensions/NEEDLE_progressive";
23
+ import { Gizmos, isDevEnvironment } from "../engine/api";
23
24
  const debug = getParam("debugparticles");
24
25
  const suppressProgressiveLoading = getParam("noprogressive");
25
26
  const debugProgressiveLoading = getParam("debugprogressive");
@@ -31,27 +32,23 @@ export var SubEmitterType;
31
32
  SubEmitterType[SubEmitterType["Trigger"] = 3] = "Trigger";
32
33
  SubEmitterType[SubEmitterType["Manual"] = 4] = "Manual";
33
34
  })(SubEmitterType || (SubEmitterType = {}));
34
- export class SubEmitterSystem {
35
- particleSystem;
36
- emitProbability = 1;
37
- properties;
38
- type;
39
- _deserialize(context) {
40
- const ps = this.particleSystem;
41
- if (ps && !(ps instanceof ParticleSystem) && typeof ps["guid"] === "string") {
42
- if (debug)
43
- console.log("DESERIALIZE SUBEMITTER", ps);
44
- this.particleSystem = undefined;
45
- this.particleSystem = GameObject.findByGuid(ps["guid"], context.scene);
46
- }
47
- }
48
- }
49
35
  export class ParticleSystemRenderer extends Behaviour {
50
36
  renderMode;
51
37
  particleMaterial;
52
38
  trailMaterial;
53
39
  // @serializable(Mesh)
54
40
  particleMesh;
41
+ maxParticleSize;
42
+ minParticleSize;
43
+ start() {
44
+ if (this.maxParticleSize !== .5 && this.minParticleSize !== 0) {
45
+ if (isDevEnvironment()) {
46
+ const msg = `ParticleSystem \"${this.name}\" has non-default min/max particle size. This may not render correctly. Please set min size to 0 and the max size to 0.5 and use the \"StartSize\" setting instead`;
47
+ console.warn(msg);
48
+ // showBalloonWarning(msg);
49
+ }
50
+ }
51
+ }
55
52
  get transparent() {
56
53
  const res = this.particleMaterial?.transparent ?? false;
57
54
  // console.log(res, this.particleMaterial);
@@ -104,6 +101,12 @@ __decorate([
104
101
  __decorate([
105
102
  serializable(Material)
106
103
  ], ParticleSystemRenderer.prototype, "trailMaterial", void 0);
104
+ __decorate([
105
+ serializable()
106
+ ], ParticleSystemRenderer.prototype, "maxParticleSize", void 0);
107
+ __decorate([
108
+ serializable()
109
+ ], ParticleSystemRenderer.prototype, "minParticleSize", void 0);
107
110
  class MinMaxCurveFunction {
108
111
  _curve;
109
112
  constructor(curve) { this._curve = curve; }
@@ -257,8 +260,12 @@ class RotationBehaviour extends ParticleSystemBaseBehaviour {
257
260
  const $sizeLerpFactor = Symbol("sizeLerpFactor");
258
261
  class SizeBehaviour extends ParticleSystemBaseBehaviour {
259
262
  type = "NeedleSize";
263
+ _minSize = 0;
264
+ _maxSize = 1;
260
265
  initialize(particle) {
261
266
  particle[$sizeLerpFactor] = Math.random();
267
+ this._minSize = this.system.renderer.minParticleSize;
268
+ this._maxSize = this.system.renderer.maxParticleSize;
262
269
  }
263
270
  update(particle, _delta) {
264
271
  if (this.system.renderer.renderMode === ParticleSystemRenderMode.Mesh) {
@@ -270,6 +277,8 @@ class SizeBehaviour extends ParticleSystemBaseBehaviour {
270
277
  size *= this.system.sizeOverLifetime.evaluate(age01, undefined, particle[$sizeLerpFactor]).x;
271
278
  const scaleFactor = this.system.worldScale.x / this.system.cameraScale;
272
279
  particle.size = particle.startSize * size * scaleFactor;
280
+ // in Unity this is viewport size
281
+ particle.size = Mathf.clamp(particle.size, this._minSize, this._maxSize);
273
282
  }
274
283
  }
275
284
  }
@@ -322,7 +331,8 @@ class VelocityBehaviour extends ParticleSystemBaseBehaviour {
322
331
  type = "NeedleVelocity";
323
332
  _gravityDirection = new Vector3();
324
333
  initialize(particle) {
325
- const factor = 1 + this.scaleFactorDiff;
334
+ const simulationSpeed = this.system.main.simulationSpeed;
335
+ const factor = 1 + this.scaleFactorDiff * simulationSpeed;
326
336
  particle.startSpeed = this.system.main.startSpeed.evaluate(Math.random(), Math.random()) * factor;
327
337
  particle.velocity.copy(this.system.shape.getDirection(particle.position)).multiplyScalar(particle.startSpeed);
328
338
  if (this.system.inheritVelocity?.enabled) {
@@ -333,7 +343,7 @@ class VelocityBehaviour extends ParticleSystemBaseBehaviour {
333
343
  else
334
344
  particle[$startVelocity].copy(particle.velocity);
335
345
  const gravityFactor = this.system.main.gravityModifier.evaluate(Math.random(), Math.random()) / (9.81 * 2);
336
- particle[$gravityFactor] = gravityFactor;
346
+ particle[$gravityFactor] = gravityFactor * simulationSpeed;
337
347
  particle[$velocityLerpFactor] = Math.random();
338
348
  this._gravityDirection.set(0, -1, 0);
339
349
  if (this.system.main.simulationSpace === ParticleSystemSimulationSpace.Local)
@@ -347,7 +357,8 @@ class VelocityBehaviour extends ParticleSystemBaseBehaviour {
347
357
  if (gravityFactor !== 0) {
348
358
  // gravityFactor *= -1;
349
359
  temp3.copy(this._gravityDirection).multiplyScalar(gravityFactor);
350
- // Gizmos.DrawDirection(particle.position, temp3, 0xff0000, 0, false, 10);
360
+ if (debug)
361
+ Gizmos.DrawDirection(particle.position, temp3, 0x0000ff, 0, false, 10);
351
362
  baseVelocity.add(temp3);
352
363
  }
353
364
  particle.velocity.copy(baseVelocity);
@@ -639,19 +650,22 @@ export class ParticleSystem extends Behaviour {
639
650
  this._subEmitterSystems = arr;
640
651
  }
641
652
  _subEmitterSystems;
642
- awake() {
653
+ onAfterDeserialize(_) {
643
654
  if (this._subEmitterSystems && Array.isArray(this._subEmitterSystems)) {
644
655
  for (const sub of this._subEmitterSystems) {
645
- sub._deserialize(this.context);
656
+ sub._deserialize(this.context, this.gameObject);
646
657
  }
647
658
  }
659
+ }
660
+ awake() {
648
661
  this._renderer = this.gameObject.getComponent(ParticleSystemRenderer);
649
662
  this._container = new Object3D();
650
663
  this._container.matrixAutoUpdate = false;
651
- if (this.main.simulationSpace == ParticleSystemSimulationSpace.Local) {
652
- this.gameObject.add(this._container);
653
- }
654
- else {
664
+ // if (this.main.simulationSpace == ParticleSystemSimulationSpace.Local) {
665
+ // this.gameObject.add(this._container);
666
+ // }
667
+ // else
668
+ {
655
669
  this.context.scene.add(this._container);
656
670
  }
657
671
  // else this._container = this.context.scene;
@@ -728,19 +742,22 @@ export class ParticleSystem extends Behaviour {
728
742
  const scale = getWorldScale(cam);
729
743
  this._cameraScale = scale.x;
730
744
  }
731
- let source = this._container;
732
- if (this.worldspace)
733
- source = this.gameObject;
745
+ const isLocalSpace = !this.worldspace;
746
+ const source = this.gameObject;
734
747
  getWorldQuaternion(source, this.__worldQuaternion);
735
748
  this._worldQuaternionInverted.copy(this.__worldQuaternion).invert();
736
749
  getWorldScale(this.gameObject, this._worldScale);
737
- if (!this.worldspace && this._container && this.gameObject?.parent) {
750
+ // Handle LOCALSPACE
751
+ if (isLocalSpace && this._container && this.gameObject?.parent) {
752
+ // TODO: there's probably a more efficient way to do this
738
753
  const scale = getWorldScale(this.gameObject.parent);
739
754
  scale.x = 1 / scale.x;
740
755
  scale.y = 1 / scale.y;
741
756
  scale.z = 1 / scale.z;
742
- this._container.matrix.identity();
743
- this._container.matrix.scale(scale);
757
+ this._container.matrix.makeScale(scale.x, scale.y, scale.z);
758
+ this._container.matrix.makeRotationFromQuaternion(this.__worldQuaternion);
759
+ this._container.matrix.setPosition(this.worldPos);
760
+ this._container.matrix.scale(this.gameObject.scale);
744
761
  }
745
762
  this.emission.system = this;
746
763
  this._interface.update();
@@ -813,4 +830,16 @@ __decorate([
813
830
  __decorate([
814
831
  serializable(SizeBySpeedModule)
815
832
  ], ParticleSystem.prototype, "sizeBySpeed", void 0);
833
+ export class SubEmitterSystem {
834
+ particleSystem;
835
+ emitProbability = 1;
836
+ properties;
837
+ type;
838
+ _deserialize(context, _gameObject) {
839
+ const ps = this.particleSystem;
840
+ if (ps && !(ps instanceof ParticleSystem) && typeof ps["guid"] === "string") {
841
+ this.particleSystem = GameObject.findByGuid(ps["guid"], context.scene);
842
+ }
843
+ }
844
+ }
816
845
  //# sourceMappingURL=ParticleSystem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ParticleSystem.js","sourceRoot":"","sources":["../../../src/engine-components/ParticleSystem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAwD,uBAAuB,EAAE,sBAAsB,EAAE,WAAW,EAAE,6BAA6B,EAAE,aAAa,EAAmB,wBAAwB,EAAE,WAAW,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,+BAA+B,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACtf,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,mDAAmD;AACnD,iHAAiH;AAEjH,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAyB,QAAQ,EAAW,IAAI,EAAwB,QAAQ,EAA0B,aAAa,EAAE,UAAU,EAA0B,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChN,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AACnG,OAAO,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAgE,aAAa,EAAE,aAAa,EAA4K,cAAc,IAAI,eAAe,EAAuD,UAAU,EAA+C,aAAa,EAAiC,MAAM,cAAc,CAAC;AAC5f,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE7E,MAAM,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;AACzC,MAAM,0BAA0B,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;AAC7D,MAAM,uBAAuB,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAE7D,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACtB,qDAAS,CAAA;IACT,6DAAa,CAAA;IACb,qDAAS,CAAA;IACT,yDAAW,CAAA;IACX,uDAAU,CAAA;AACd,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB;AAED,MAAM,OAAO,gBAAgB;IAEzB,cAAc,CAAkB;IAEhC,eAAe,GAAW,CAAC,CAAC;IAC5B,UAAU,CAAU;IACpB,IAAI,CAAkB;IAEtB,YAAY,CAAC,OAAgB;QACzB,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC;QAC/B,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,YAAY,cAAc,CAAC,IAAI,OAAO,EAAE,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE;YACzE,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;YACrD,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;YAChC,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAmB,CAAC;SAC5F;IACL,CAAC;CACJ;AAED,MAAM,OAAO,sBAAuB,SAAQ,SAAS;IAGjD,UAAU,CAA4B;IAGtC,gBAAgB,CAAkB;IAGlC,aAAa,CAAkB;IAE/B,sBAAsB;IACtB,YAAY,CAAiB;IAE7B,IAAI,WAAW;QACX,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,EAAE,WAAW,IAAI,KAAK,CAAC;QACxD,2CAA2C;QAC3C,OAAO,GAAG,CAAC;IACf,CAAC;IAED,WAAW,CAAC,eAAwB,KAAK;QACrC,MAAM,QAAQ,GAAG,CAAC,YAAY,KAAK,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAE5G,4BAA4B;QAC5B,kHAAkH;QAClH,IAAI,QAAQ,IAAI,CAAC,0BAA0B,IAAI,QAAQ,CAAC,uBAAuB,CAAC,KAAK,SAAS,EAAE;YAC5F,QAAQ,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,uBAAuB,EAAE;gBACzB,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;aACnD;YACD,kBAAkB,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;SAC9E;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,OAAO,CAAC,UAAqC;QACzC,IAAI,GAAG,GAA0B,IAAI,CAAC;QACtC,IAAI,UAAU,KAAK,wBAAwB,CAAC,mBAAmB,EAAE;YAC7D,GAAG,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SACxC;aACI,IAAI,UAAU,KAAK,wBAAwB,CAAC,iBAAiB,EAAE;YAChE,GAAG,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SACxC;QAED,IAAI,CAAC,GAAG,EAAE;YACN,IAAI,IAAI,CAAC,YAAY,YAAY,IAAI,EAAE;gBACnC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;aACpC;YACD,IAAI,GAAG,KAAK,IAAI,EAAE;gBACd,GAAG,GAAG,IAAI,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC9B,wBAAwB;gBACxB,MAAM,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;oBAC/B,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC9B;aACJ;SACJ;QAED,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9C,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AA3DG;IADC,YAAY,EAAE;0DACuB;AAGtC;IADC,YAAY,CAAC,QAAQ,CAAC;gEACW;AAGlC;IADC,YAAY,CAAC,QAAQ,CAAC;6DACQ;AAuDnC,MAAM,mBAAmB;IAEb,MAAM,CAAc;IAE5B,YAAY,KAAkB,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IAExD,IAAI,GAAe,UAAU,CAAC;IAE9B,QAAQ,CAAC,CAAS;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,MAAM;QACF,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,KAAK;QACD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;CACJ;AAED,MAAM,sBAAsB;IAEhB,MAAM,CAAiB;IAE/B,YAAY,KAAqB,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IAE3D,IAAI,GAAe,UAAU,CAAC;IAE9B,QAAQ,CAAC,KAAoB,EAAE,CAAS;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACnD,mDAAmD;QACnD,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1C,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM;QACF,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,KAAK;QACD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;CAEJ;AAED,MAAe,kBAAkB;IAE7B,IAAI,GAAY,OAAO,CAAC;IACxB,MAAM;QACF,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,KAAK;QACD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAIQ,MAAM,CAAiB;IAEhC,YAAY,MAAsB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;CACJ;AAED,MAAM,+BAAgC,SAAQ,kBAAkB;IAC5D,QAAQ;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,aAAa,EAAE,CAAC;IAC7D,CAAC;CAEJ;AAED,MAAM,8BAA+B,SAAQ,kBAAkB;IAEnD,aAAa,GAAY,IAAI,OAAO,EAAE,CAAC;IACvC,aAAa,GAAW,CAAC,CAAC;IAElC,MAAM;QACF,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;QACnE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC7C,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY;YAAE,OAAO,CAAC,CAAC;QACvE,qBAAqB;QACrB,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAClH,0EAA0E;QAC1E,4EAA4E;QAC5E,iGAAiG;QAEjG,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,EAAE;YAC3B,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAChI,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YAClE,IAAI,qBAAqB,GAAG,cAAc,GAAG,gBAAgB,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC;gBAAE,qBAAqB,GAAG,CAAC,CAAC;YACvE,QAAQ,IAAI,qBAAqB,CAAC;SACrC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC9C,IAAI,KAAK,GAAG,CAAC;YACT,QAAQ,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QAE9C,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC9E,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACzE,CAAC;CACJ;AAED,MAAM,kCAAmC,SAAQ,kBAAkB;IAE/D,QAAQ;QACJ,+BAA+B;QAC/B,OAAO,CAAC,CAAC;QACT,0EAA0E;QAC1E,2HAA2H;QAC3H,mBAAmB;IACvB,CAAC;CACJ;AAED,MAAe,2BAA2B;IAC7B,MAAM,CAAiB;IAEhC,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IACxD,CAAC;IAED,YAAY,EAAkB;QAC1B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;IAID,UAAU,CAAC,SAAmB;IAC9B,CAAC;IACD,MAAM,CAAC,SAAmB,EAAE,MAAc;IAC1C,CAAC;IACD,WAAW,CAAC,MAAc;IAC1B,CAAC;IACD,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;IACxD,KAAK,KAAe,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;CACpE;AAED,MAAM,8BAA+B,SAAQ,2BAA2B;IACpE,IAAI,GAAW,oBAAoB,CAAA;IAEnC,MAAM,CAAC,QAAkB,EAAE,MAAc;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC;QAChD,IAAI,KAAK,CAAC,OAAO,EAAE;YACf,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;YACzC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAAA,CAAC;YACnC,IAAI,KAAK,KAAK,SAAS;gBACnB,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC;SAC/B;IACL,CAAC;CAEJ;AAED,MAAM,iBAAiB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;AAEpD,MAAM,iBAAkB,SAAQ,2BAA2B;IACvD,IAAI,GAAW,gBAAgB,CAAA;IAE/B,UAAU,CAAC,QAAkB;QACzB,QAAQ,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,QAAkB,EAAE,KAAa;QACpC,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS;YAAE,OAAO;QAE5C,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;QAEvC,IAAI,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACvC,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,OAAO,EAAE;gBAC1C,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC,GAAG,KAAK,CAAC;aAC1G;iBACI;gBACD,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,wBAAwB,CAAC,SAAS;oBACtE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC;aACnC;YAED,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE;gBACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACzC,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;aAC/E;SACJ;aACI;YACD,gDAAgD;YAChD,oDAAoD;SACvD;IACL,CAAC;CACJ;AAED,MAAM,eAAe,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACjD,MAAM,aAAc,SAAQ,2BAA2B;IAEnD,IAAI,GAAW,YAAY,CAAC;IAE5B,UAAU,CAAC,QAAkB;QACzB,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,QAAkB,EAAE,MAAc;QACrC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,wBAAwB,CAAC,IAAI,EAAE;SAEtE;aACI;YACD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC3C,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO;gBACpC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YACjG,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;YACvE,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,SAAS,GAAG,IAAI,GAAG,WAAW,CAAC;SAE3D;IACL,CAAC;CACJ;AAED,MAAM,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAC7C,MAAM,cAAc,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAC/C,MAAM,iBAAiB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAErD,MAAM,cAAe,SAAQ,2BAA2B;IACpD,IAAI,GAAW,aAAa,CAAC;IAE7B,UAAU,CAAC,QAAkB;QACzB,IAAI,QAAQ,YAAY,aAAa,EAAE;YACnC,QAAQ,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC;YACxC,QAAQ,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC;YACzC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,KAAK,KAAK,EAAE;gBAC7E,QAAQ,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC9F,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,cAAc,CAAC,CAAC;aAC7C;YACD,QAAQ,CAAC,iBAAiB,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;SACjD;IAEL,CAAC;IAED,MAAM,CAAC,QAAkB;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,QAAQ,YAAY,aAAa,EAAE;YAClE,MAAM,aAAa,GAAG,QAAyB,CAAC;YAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;YACrD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;YACxC,8CAA8C;YAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBACxB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAoB,CAAC;gBACvC,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBACrC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACtE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;aAC1D;YAED,qCAAqC;YACrC,IAAI,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,EAAE;gBACxC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC/B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;gBAC9E,aAAa,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;aACxE;SACJ;IACL,CAAC;CACJ;AAED,MAAM,cAAc,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAC/C,MAAM,cAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AACjD,MAAM,mBAAmB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAC3D,MAAM,KAAK,GAAG,IAAI,OAAO,EAAE,CAAC;AAC5B,MAAM,KAAK,GAAG,IAAI,UAAU,EAAE,CAAC;AAE/B,MAAM,iBAAkB,SAAQ,2BAA2B;IACvD,IAAI,GAAW,gBAAgB,CAAC;IAExB,iBAAiB,GAAG,IAAI,OAAO,EAAE,CAAC;IAE1C,UAAU,CAAC,QAAkB;QACzB,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;QACxC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC;QAClG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC9G,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE;YACtC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;;YAC/E,QAAQ,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEtD,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QAC3G,QAAQ,CAAC,cAAc,CAAC,GAAG,aAAa,CAAC;QAEzC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAE9C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,KAAK,6BAA6B,CAAC,KAAK;YACxE,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,CAAC,QAAkB,EAAE,KAAa;QAEpC,sBAAsB;QACtB,kBAAkB;QAClB,MAAM,YAAY,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC9C,IAAI,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC7C,IAAI,aAAa,KAAK,CAAC,EAAE;YACrB,uBAAuB;YACvB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;YACjE,0EAA0E;YAC1E,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SAC3B;QACD,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAErC,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;QAEzC,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE;YACtC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;SACnG;QAGD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAChC,IAAI,KAAK,CAAC,OAAO,EAAE;YACf,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC5F;QAED,sBAAsB;QACtB,4BAA4B;QAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QAC5C,IAAI,WAAW,EAAE,OAAO,EAAE;YACtB,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC9G;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAC9C,IAAI,YAAY,EAAE,OAAO,EAAE;YACvB,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC3F;QAED,sBAAsB;QACtB,wBAAwB;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAClD,IAAI,QAAQ,CAAC,OAAO,EAAE;YAClB,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC/F;QAED,MAAM,yBAAyB,GAAG,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC;QACxE,IAAI,yBAAyB,CAAC,OAAO,EAAE;YACnC,2CAA2C;YAC3C,yBAAyB,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;SACrH;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YACxB,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SACtD;IACL,CAAC;CACJ;AAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AACnD,MAAM,cAAe,SAAQ,2BAA2B;IACpD,IAAI,GAAW,aAAa,CAAC;IAE7B,UAAU,CAAC,SAAmB;IAC9B,CAAC;IAEO,KAAK,CAAC,QAAkB;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAChE,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QACxD,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACzC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,QAAkB,EAAE,MAAc;QACrC,IAAI,QAAQ,CAAC,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE;YACvC,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;YACvC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;YACxF,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SACpF;aACI;YACD,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SAC5C;IACL,CAAC;CACJ;AAED,MAAM,uBAAuB;IAER,MAAM,CAAiB;IACvB,QAAQ,CAAiC;IAC1D,IAAY,IAAI;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC;IAC7C,CAAC;IAED,YAAY,MAAsB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,8BAA8B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpE,CAAC;IAED,MAAM;QACF,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED,WAAW,CAAuB;IAClC,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,KAAmB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,IAAI,SAAS,KAAK,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACnF,IAAI,UAAU,KAAK,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACjF,IAAI,aAAa,KAAK,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACvF,IAAI,SAAS,KAAK,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC/E,WAAW,CAAuD,CAAC,iCAAiC;IACpG,IAAI,UAAU,KAAK,OAAO,IAAI,aAAa,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,IAAI,gBAAgB,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChD,gCAAgC;IAChC,IAAI,oBAAoB,KAAK,OAAO,IAAI,kCAAkC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC1F,yDAAyD;IACzD,cAAc,CAAiC;IAC/C,eAAe,CAAuB;IAC7B,SAAS,GAAe,EAAE,CAAC;IACpC,IAAI,kBAAkB;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC;IAClF,CAAC;IACD,IAAI,UAAU;QACV,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;YACxC,OAAO,UAAU,CAAC,KAAK,CAAC;SAC3B;QACD,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE;YACrC,KAAK,wBAAwB,CAAC,SAAS,CAAC,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC;YACrE,oEAAoE;YACpE,KAAK,wBAAwB,CAAC,mBAAmB,CAAC,CAAC,OAAO,UAAU,CAAC,UAAU,CAAC;YAChF,KAAK,wBAAwB,CAAC,iBAAiB,CAAC,CAAC,OAAO,UAAU,CAAC,UAAU,CAAC;YAC9E,KAAK,wBAAwB,CAAC,IAAI,CAAC,CAAC,OAAO,UAAU,CAAC,UAAU,CAAC;SACpE;QACD,OAAO,UAAU,CAAC,SAAS,CAAC;IAChC,CAAC;IACD,uBAAuB,GAAkB;QACrC,WAAW,EAAE,IAAI,aAAa,CAAC,GAAG,CAAC;QACnC,iBAAiB,EAAE,KAAK;KAC3B,CAAC;IACF,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IAC9D,IAAI,OAAO;QACP,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzE,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE;YACnB,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAE,CAAC;YACxB,GAAG,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAC7B,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC;YACpC,OAAO,GAAG,CAAC;SACd;QACD,OAAO,iBAAiB,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC1D,CAAC;IACD,IAAI,cAAc,KAAK,OAAO,IAAI,+BAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACjF,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA,CAAC,CAAC;IAChF,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA,CAAC,CAAC;IAChF,IAAI,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,QAAQ,KAAqB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAClH,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9D,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,KAAK,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAC;CAExG;AAED,MAAM,sBAAsB;IAExB,UAAU,GAAW,CAAC,CAAC;IACvB,cAAc,GAAW,CAAC,CAAC;IAC3B,IAAI,GAAW,CAAC,CAAC;IACjB,WAAW,GAAW,CAAC,CAAC;CAC3B;AAED,MAAM,OAAO,cAAe,SAAQ,SAAS;IAEzC,IAAI,CAAC,kBAA2B,KAAK;QACjC,IAAI,eAAe,EAAE;YACjB,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE;gBAChD,IAAI,IAAI,YAAY,cAAc,IAAI,IAAI,KAAK,IAAI,EAAE;oBACjD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACpB;YACL,CAAC,EAAE,IAAI,CAAC,CAAA;SACX;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QAEf,wDAAwD;QACxD,IAAI,IAAI,CAAC,eAAe,EAAE;YACtB,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;YAC/C,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;SAC7C;QACD,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK;QACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC5B,CAAC;IACD,IAAI;QACA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACnB,CAAC;IAEO,MAAM,CAA0B;IACxC,IAAI,CAAC,KAAa;QACd,IAAI,IAAI,CAAC,eAAe,EAAE;YACtB,uFAAuF;YACvF,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACnE,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,sBAAsB,EAAE,CAAC;YAC7D,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;YACrB,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YACzD,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;YAC1C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACjG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,cAAc,CAAC;SACtD;IACL,CAAC;IAGQ,iBAAiB,CAA2B;IAG5C,IAAI,CAAc;IAGlB,QAAQ,CAAkB;IAG1B,gBAAgB,CAA0B;IAG1C,KAAK,CAAe;IAGpB,KAAK,CAAe;IAGpB,MAAM,CAAe;IAGrB,oBAAoB,CAA8B;IAGlD,yBAAyB,CAAmC;IAG5D,eAAe,CAAyB;IAGxC,YAAY,CAAsB;IAGlC,qBAAqB,CAA+B;IAGpD,oBAAoB,CAA8B;IAGlD,eAAe,CAAyB;IAGxC,WAAW,CAAqB;IAEzC,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAE3C,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,eAAe,EAAE,WAAW,IAAI,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;IAClC,CAAC;IACD,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IACD,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC9B,CAAC;IACD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;IACnE,CAAC;IACD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IACO,YAAY,GAAW,CAAC,CAAC;IAEjC,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAW,CAAC;IAC5B,CAAC;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,KAAK,6BAA6B,CAAC,KAAK,CAAC;IAC7E,CAAC;IAEO,iBAAiB,GAAG,IAAI,UAAU,EAAE,CAAC;IAC7C,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IACO,wBAAwB,GAAG,IAAI,UAAU,EAAE,CAAC;IACpD,IAAI,uBAAuB;QACvB,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACzC,CAAC;IACO,WAAW,GAAG,IAAI,OAAO,EAAE,CAAC;IACpC,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAEO,mBAAmB,GAAW,CAAC,CAAC,CAAC;IACjC,SAAS,GAAY,IAAI,OAAO,EAAE,CAAC;IAC3C,IAAI,QAAQ;QACR,IAAI,IAAI,CAAC,mBAAmB,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;YACtD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YACnD,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;SACrD;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;IACvC,CAAC;IAED,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAEO,SAAS,CAA0B;IACnC,YAAY,CAA2B;IACvC,eAAe,CAAmB;IAClC,UAAU,CAA2B;IAE7C,4BAA4B;IAC5B,6BAA6B;IAC7B,iCAAiC;IACzB,UAAU,CAAY;IACtB,KAAK,GAAW,CAAC,CAAC;IAClB,UAAU,GAAY,IAAI,CAAC;IAC3B,kBAAkB,GAAY,KAAK,CAAC;IAE5C,kCAAkC;IAClC,IAAY,MAAM,CAAC,GAAoB;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,KAAK,YAAY,aAAa,CAAC,KAAK,KAAK,EAAE;gBAC5C,MAAM,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;gBACrC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACxB,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;aACrB;SACJ;QACD,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;IACvB,CAAC;IACO,OAAO,CAAmB;IAElC,kCAAkC;IAClC,IAAY,iBAAiB,CAAC,GAAuB;QACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,GAAG,YAAY,gBAAgB,CAAC,KAAK,KAAK,EAAE;gBAC7C,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;gBACxC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;gBACtB,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;aACrB;SACJ;QACD,IAAI,KAAK,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;SAC1C;QACD,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC;IAClC,CAAC;IACO,kBAAkB,CAAsB;IAEhD,KAAK;QAED,IAAI,IAAI,CAAC,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;YACnE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBACvC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAClC;SACJ;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,sBAAsB,CAA2B,CAAC;QAEhG,IAAI,CAAC,UAAU,GAAG,IAAI,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC;QACzC,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,6BAA6B,CAAC,KAAK,EAAE;YAClE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACxC;aACI;YACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC3C;QACD,6CAA6C;QAE7C,IAAI,CAAC,YAAY,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAC9C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/E,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,8BAA8B,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3E,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAE3D,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEhC,IAAI,KAAK,EAAE;YACP,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;SACzC;IACL,CAAC;IAED,KAAK;QACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACjC,CAAC;IAED,SAAS;QACL,IAAI,CAAC,UAAU,EAAE,gBAAgB,EAAE,CAAC;QACpC,IAAI,CAAC,YAAY,EAAE,gBAAgB,EAAE,CAAC;QACtC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACjD,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;IACpC,CAAC;IAED,QAAQ;QACJ,IAAI,IAAI,CAAC,eAAe;YACpB,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,SAAS;IACT,CAAC;IAED,cAAc;QACV,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QAE1B,IAAI,IAAI,CAAC,YAAY,EAAE;YACnB,6BAA6B;YAC7B,2CAA2C;YAC3C,iEAAiE;YACjE,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,GAAG,EAAE,KAAK,CAAC,EAAE;gBACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACvD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBAC3C,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;oBAC1B,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBACvB;aACJ;YACD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SAChC;QACD,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACnD,CAAC;IAEO,mBAAmB,GAAW,CAAC,CAAC,CAAC;IACjC,QAAQ;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,eAAe,EAAE;YACxE,IAAI,CAAC,mBAAmB,GAAG,GAAG,CAAC,OAAO,CAAC;YACvC,IAAI,CAAC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;SAC1D;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YACpC,OAAO,IAAI,CAAC,OAAO,CAAC;SACvB;QACD,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAE7B,wCAAwC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;QACpC,IAAI,GAAG,EAAE;YACL,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC;SAC/B;QAED,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7B,IAAI,IAAI,CAAC,UAAU;YACf,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7B,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAClD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC;QACpE,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAEjD,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE;YAChE,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACpD,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACtB,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACtB,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACvC;QACD,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAClF,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAEO,qBAAqB;QACzB,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,EAAE;YACjD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBACvC,2CAA2C;gBAC3C,IAAI,GAAG,CAAC,cAAc;oBAAE,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC;gBAC7D,MAAM,MAAM,GAAG,GAAG,CAAC,cAAc,EAAE,eAAe,CAAC;gBACnD,IAAI,MAAM,EAAE;oBACR,GAAG,CAAC,cAAe,CAAC,kBAAkB,GAAG,IAAI,CAAC;oBAC9C,kFAAkF;oBAClF,MAAM,GAAG,GAAG,IAAI,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG,CAAC,cAAe,EAAE,MAAM,CAAC,CAAC;oBAC5F,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC;oBAC3B,GAAG,CAAC,kBAAkB,GAAG,GAAG,CAAC,eAAe,CAAC;oBAC7C,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;iBACzC;aACJ;SACJ;IACL,CAAC;CACJ;AA3SG;IADC,YAAY,CAAC,uBAAuB,CAAC;yDACe;AAGrD;IADC,YAAY,CAAC,UAAU,CAAC;4CACE;AAG3B;IADC,YAAY,CAAC,cAAc,CAAC;gDACM;AAGnC;IADC,YAAY,CAAC,sBAAsB,CAAC;wDACc;AAGnD;IADC,YAAY,CAAC,WAAW,CAAC;6CACG;AAG7B;IADC,YAAY,CAAC,WAAW,CAAC;6CACG;AAG7B;IADC,YAAY,CAAC,WAAW,CAAC;8CACI;AAG9B;IADC,YAAY,CAAC,0BAA0B,CAAC;4DACkB;AAG3D;IADC,YAAY,CAAC,+BAA+B,CAAC;iEACuB;AAGrE;IADC,YAAY,CAAC,qBAAqB,CAAC;uDACa;AAGjD;IADC,YAAY,CAAC,kBAAkB,CAAC;oDACU;AAG3C;IADC,YAAY,CAAC,2BAA2B,CAAC;6DACmB;AAG7D;IADC,YAAY,CAAC,0BAA0B,CAAC;4DACkB;AAG3D;IADC,YAAY,CAAC,qBAAqB,CAAC;uDACa;AAGjD;IADC,YAAY,CAAC,iBAAiB,CAAC;mDACS"}
1
+ {"version":3,"file":"ParticleSystem.js","sourceRoot":"","sources":["../../../src/engine-components/ParticleSystem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAwD,uBAAuB,EAAE,sBAAsB,EAAE,WAAW,EAAE,6BAA6B,EAAE,aAAa,EAAmB,wBAAwB,EAAE,WAAW,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,+BAA+B,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACtf,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,mDAAmD;AACnD,iHAAiH;AAEjH,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAyB,QAAQ,EAAW,IAAI,EAAwB,QAAQ,EAA0B,aAAa,EAAE,UAAU,EAA0B,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChN,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EAAiB,MAAM,8BAA8B,CAAC;AAClH,OAAO,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAgE,aAAa,EAAE,aAAa,EAA4K,cAAc,IAAI,eAAe,EAAuD,UAAU,EAA+C,aAAa,EAAiC,MAAM,cAAc,CAAC;AAC5f,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEzD,MAAM,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;AACzC,MAAM,0BAA0B,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;AAC7D,MAAM,uBAAuB,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAE7D,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACtB,qDAAS,CAAA;IACT,6DAAa,CAAA;IACb,qDAAS,CAAA;IACT,yDAAW,CAAA;IACX,uDAAU,CAAA;AACd,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB;AAED,MAAM,OAAO,sBAAuB,SAAQ,SAAS;IAGjD,UAAU,CAA4B;IAGtC,gBAAgB,CAAkB;IAGlC,aAAa,CAAkB;IAE/B,sBAAsB;IACtB,YAAY,CAAiB;IAG7B,eAAe,CAAU;IAGzB,eAAe,CAAU;IAEzB,KAAK;QACD,IAAI,IAAI,CAAC,eAAe,KAAK,EAAE,IAAI,IAAI,CAAC,eAAe,KAAK,CAAC,EAAE;YAC3D,IAAI,gBAAgB,EAAE,EAAE;gBACpB,MAAM,GAAG,GAAG,oBAAoB,IAAI,CAAC,IAAI,qKAAqK,CAAC;gBAC/M,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClB,2BAA2B;aAC9B;SACJ;IACL,CAAC;IAED,IAAI,WAAW;QACX,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,EAAE,WAAW,IAAI,KAAK,CAAC;QACxD,2CAA2C;QAC3C,OAAO,GAAG,CAAC;IACf,CAAC;IAED,WAAW,CAAC,eAAwB,KAAK;QACrC,MAAM,QAAQ,GAAG,CAAC,YAAY,KAAK,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAE5G,4BAA4B;QAC5B,kHAAkH;QAClH,IAAI,QAAQ,IAAI,CAAC,0BAA0B,IAAI,QAAQ,CAAC,uBAAuB,CAAC,KAAK,SAAS,EAAE;YAC5F,QAAQ,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,uBAAuB,EAAE;gBACzB,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;aACnD;YACD,kBAAkB,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;SAC9E;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,OAAO,CAAC,UAAqC;QACzC,IAAI,GAAG,GAA0B,IAAI,CAAC;QACtC,IAAI,UAAU,KAAK,wBAAwB,CAAC,mBAAmB,EAAE;YAC7D,GAAG,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SACxC;aACI,IAAI,UAAU,KAAK,wBAAwB,CAAC,iBAAiB,EAAE;YAChE,GAAG,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SACxC;QAED,IAAI,CAAC,GAAG,EAAE;YACN,IAAI,IAAI,CAAC,YAAY,YAAY,IAAI,EAAE;gBACnC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;aACpC;YACD,IAAI,GAAG,KAAK,IAAI,EAAE;gBACd,GAAG,GAAG,IAAI,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC9B,wBAAwB;gBACxB,MAAM,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;oBAC/B,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC9B;aACJ;SACJ;QAED,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9C,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AA3EG;IADC,YAAY,EAAE;0DACuB;AAGtC;IADC,YAAY,CAAC,QAAQ,CAAC;gEACW;AAGlC;IADC,YAAY,CAAC,QAAQ,CAAC;6DACQ;AAM/B;IADC,YAAY,EAAE;+DACU;AAGzB;IADC,YAAY,EAAE;+DACU;AA8D7B,MAAM,mBAAmB;IAEb,MAAM,CAAc;IAE5B,YAAY,KAAkB,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IAExD,IAAI,GAAe,UAAU,CAAC;IAE9B,QAAQ,CAAC,CAAS;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,MAAM;QACF,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,KAAK;QACD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;CACJ;AAED,MAAM,sBAAsB;IAEhB,MAAM,CAAiB;IAE/B,YAAY,KAAqB,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IAE3D,IAAI,GAAe,UAAU,CAAC;IAE9B,QAAQ,CAAC,KAAoB,EAAE,CAAS;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACnD,mDAAmD;QACnD,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1C,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM;QACF,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,KAAK;QACD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;CAEJ;AAED,MAAe,kBAAkB;IAE7B,IAAI,GAAY,OAAO,CAAC;IACxB,MAAM;QACF,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,KAAK;QACD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAIQ,MAAM,CAAiB;IAEhC,YAAY,MAAsB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;CACJ;AAED,MAAM,+BAAgC,SAAQ,kBAAkB;IAC5D,QAAQ;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,aAAa,EAAE,CAAC;IAC7D,CAAC;CAEJ;AAED,MAAM,8BAA+B,SAAQ,kBAAkB;IAEnD,aAAa,GAAY,IAAI,OAAO,EAAE,CAAC;IACvC,aAAa,GAAW,CAAC,CAAC;IAElC,MAAM;QACF,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;QACnE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC7C,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY;YAAE,OAAO,CAAC,CAAC;QACvE,qBAAqB;QACrB,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAClH,0EAA0E;QAC1E,4EAA4E;QAC5E,iGAAiG;QAEjG,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,EAAE;YAC3B,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAChI,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YAClE,IAAI,qBAAqB,GAAG,cAAc,GAAG,gBAAgB,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC;gBAAE,qBAAqB,GAAG,CAAC,CAAC;YACvE,QAAQ,IAAI,qBAAqB,CAAC;SACrC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC9C,IAAI,KAAK,GAAG,CAAC;YACT,QAAQ,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QAE9C,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC9E,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACzE,CAAC;CACJ;AAED,MAAM,kCAAmC,SAAQ,kBAAkB;IAE/D,QAAQ;QACJ,+BAA+B;QAC/B,OAAO,CAAC,CAAC;QACT,0EAA0E;QAC1E,2HAA2H;QAC3H,mBAAmB;IACvB,CAAC;CACJ;AAED,MAAe,2BAA2B;IAC7B,MAAM,CAAiB;IAEhC,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IACxD,CAAC;IAED,YAAY,EAAkB;QAC1B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;IAID,UAAU,CAAC,SAAmB;IAC9B,CAAC;IACD,MAAM,CAAC,SAAmB,EAAE,MAAc;IAC1C,CAAC;IACD,WAAW,CAAC,MAAc;IAC1B,CAAC;IACD,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;IACxD,KAAK,KAAe,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;CACpE;AAED,MAAM,8BAA+B,SAAQ,2BAA2B;IACpE,IAAI,GAAW,oBAAoB,CAAA;IAEnC,MAAM,CAAC,QAAkB,EAAE,MAAc;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC;QAChD,IAAI,KAAK,CAAC,OAAO,EAAE;YACf,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;YACzC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAAA,CAAC;YACnC,IAAI,KAAK,KAAK,SAAS;gBACnB,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC;SAC/B;IACL,CAAC;CAEJ;AAED,MAAM,iBAAiB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;AAEpD,MAAM,iBAAkB,SAAQ,2BAA2B;IACvD,IAAI,GAAW,gBAAgB,CAAA;IAE/B,UAAU,CAAC,QAAkB;QACzB,QAAQ,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,QAAkB,EAAE,KAAa;QACpC,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS;YAAE,OAAO;QAE5C,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;QAEvC,IAAI,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACvC,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,OAAO,EAAE;gBAC1C,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC,GAAG,KAAK,CAAC;aAC1G;iBACI;gBACD,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,wBAAwB,CAAC,SAAS;oBACtE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC;aACnC;YAED,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE;gBACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACzC,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;aAC/E;SACJ;aACI;YACD,gDAAgD;YAChD,oDAAoD;SACvD;IACL,CAAC;CACJ;AAED,MAAM,eAAe,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACjD,MAAM,aAAc,SAAQ,2BAA2B;IAEnD,IAAI,GAAW,YAAY,CAAC;IAEpB,QAAQ,GAAG,CAAC,CAAC;IACb,QAAQ,GAAG,CAAC,CAAC;IAErB,UAAU,CAAC,QAAkB;QACzB,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;QACrD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;IACzD,CAAC;IAED,MAAM,CAAC,QAAkB,EAAE,MAAc;QACrC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,wBAAwB,CAAC,IAAI,EAAE;SAEtE;aACI;YACD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC3C,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO;gBACpC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YACjG,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;YACvE,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,SAAS,GAAG,IAAI,GAAG,WAAW,CAAC;YACxD,iCAAiC;YACjC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC5E;IACL,CAAC;CACJ;AAED,MAAM,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAC7C,MAAM,cAAc,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAC/C,MAAM,iBAAiB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAErD,MAAM,cAAe,SAAQ,2BAA2B;IACpD,IAAI,GAAW,aAAa,CAAC;IAE7B,UAAU,CAAC,QAAkB;QACzB,IAAI,QAAQ,YAAY,aAAa,EAAE;YACnC,QAAQ,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC;YACxC,QAAQ,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC;YACzC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,KAAK,KAAK,EAAE;gBAC7E,QAAQ,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC9F,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,cAAc,CAAC,CAAC;aAC7C;YACD,QAAQ,CAAC,iBAAiB,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;SACjD;IAEL,CAAC;IAED,MAAM,CAAC,QAAkB;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,QAAQ,YAAY,aAAa,EAAE;YAClE,MAAM,aAAa,GAAG,QAAyB,CAAC;YAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;YACrD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;YACxC,8CAA8C;YAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBACxB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAoB,CAAC;gBACvC,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBACrC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACtE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;aAC1D;YAED,qCAAqC;YACrC,IAAI,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,EAAE;gBACxC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC/B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;gBAC9E,aAAa,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;aACxE;SACJ;IACL,CAAC;CACJ;AAED,MAAM,cAAc,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAC/C,MAAM,cAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AACjD,MAAM,mBAAmB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAC3D,MAAM,KAAK,GAAG,IAAI,OAAO,EAAE,CAAC;AAC5B,MAAM,KAAK,GAAG,IAAI,UAAU,EAAE,CAAC;AAE/B,MAAM,iBAAkB,SAAQ,2BAA2B;IACvD,IAAI,GAAW,gBAAgB,CAAC;IAExB,iBAAiB,GAAG,IAAI,OAAO,EAAE,CAAC;IAE1C,UAAU,CAAC,QAAkB;QACzB,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC;QAEzD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAC1D,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC;QAClG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC9G,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE;YACtC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;;YAC/E,QAAQ,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEtD,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QAC3G,QAAQ,CAAC,cAAc,CAAC,GAAG,aAAa,GAAG,eAAe,CAAC;QAE3D,QAAQ,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAE9C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,KAAK,6BAA6B,CAAC,KAAK;YACxE,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,CAAC,QAAkB,EAAE,KAAa;QAEpC,sBAAsB;QACtB,kBAAkB;QAClB,MAAM,YAAY,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC9C,IAAI,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC7C,IAAI,aAAa,KAAK,CAAC,EAAE;YACrB,uBAAuB;YACvB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;YACjE,IAAG,KAAK;gBAAE,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACjF,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SAC3B;QACD,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAGrC,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;QAEzC,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE;YACtC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;SACnG;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAChC,IAAI,KAAK,CAAC,OAAO,EAAE;YACf,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC5F;QAED,sBAAsB;QACtB,4BAA4B;QAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QAC5C,IAAI,WAAW,EAAE,OAAO,EAAE;YACtB,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC9G;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAC9C,IAAI,YAAY,EAAE,OAAO,EAAE;YACvB,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC3F;QAED,sBAAsB;QACtB,wBAAwB;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAClD,IAAI,QAAQ,CAAC,OAAO,EAAE;YAClB,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC/F;QAED,MAAM,yBAAyB,GAAG,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC;QACxE,IAAI,yBAAyB,CAAC,OAAO,EAAE;YACnC,2CAA2C;YAC3C,yBAAyB,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;SACrH;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YACxB,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SACtD;IACL,CAAC;CACJ;AAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AACnD,MAAM,cAAe,SAAQ,2BAA2B;IACpD,IAAI,GAAW,aAAa,CAAC;IAE7B,UAAU,CAAC,SAAmB;IAC9B,CAAC;IAEO,KAAK,CAAC,QAAkB;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAChE,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QACxD,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACzC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,QAAkB,EAAE,MAAc;QACrC,IAAI,QAAQ,CAAC,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE;YACvC,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;YACvC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;YACxF,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SACpF;aACI;YACD,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SAC5C;IACL,CAAC;CACJ;AAED,MAAM,uBAAuB;IAER,MAAM,CAAiB;IACvB,QAAQ,CAAiC;IAC1D,IAAY,IAAI;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC;IAC7C,CAAC;IAED,YAAY,MAAsB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,8BAA8B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpE,CAAC;IAED,MAAM;QACF,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED,WAAW,CAAuB;IAClC,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,KAAmB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,IAAI,SAAS,KAAK,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACnF,IAAI,UAAU,KAAK,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACjF,IAAI,aAAa,KAAK,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACvF,IAAI,SAAS,KAAK,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC/E,WAAW,CAAuD,CAAC,iCAAiC;IACpG,IAAI,UAAU,KAAK,OAAO,IAAI,aAAa,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,IAAI,gBAAgB,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChD,gCAAgC;IAChC,IAAI,oBAAoB,KAAK,OAAO,IAAI,kCAAkC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC1F,yDAAyD;IACzD,cAAc,CAAiC;IAC/C,eAAe,CAAuB;IAC7B,SAAS,GAAe,EAAE,CAAC;IACpC,IAAI,kBAAkB;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC;IAClF,CAAC;IACD,IAAI,UAAU;QACV,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;YACxC,OAAO,UAAU,CAAC,KAAK,CAAC;SAC3B;QACD,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE;YACrC,KAAK,wBAAwB,CAAC,SAAS,CAAC,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC;YACrE,oEAAoE;YACpE,KAAK,wBAAwB,CAAC,mBAAmB,CAAC,CAAC,OAAO,UAAU,CAAC,UAAU,CAAC;YAChF,KAAK,wBAAwB,CAAC,iBAAiB,CAAC,CAAC,OAAO,UAAU,CAAC,UAAU,CAAC;YAC9E,KAAK,wBAAwB,CAAC,IAAI,CAAC,CAAC,OAAO,UAAU,CAAC,UAAU,CAAC;SACpE;QACD,OAAO,UAAU,CAAC,SAAS,CAAC;IAChC,CAAC;IACD,uBAAuB,GAAkB;QACrC,WAAW,EAAE,IAAI,aAAa,CAAC,GAAG,CAAC;QACnC,iBAAiB,EAAE,KAAK;KAC3B,CAAC;IACF,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IAC9D,IAAI,OAAO;QACP,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzE,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE;YACnB,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAE,CAAC;YACxB,GAAG,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAC7B,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC;YACpC,OAAO,GAAG,CAAC;SACd;QACD,OAAO,iBAAiB,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC1D,CAAC;IACD,IAAI,cAAc,KAAK,OAAO,IAAI,+BAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACjF,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA,CAAC,CAAC;IAChF,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA,CAAC,CAAC;IAChF,IAAI,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,QAAQ,KAAqB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAClH,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9D,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,KAAK,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAC;CAExG;AAED,MAAM,sBAAsB;IAExB,UAAU,GAAW,CAAC,CAAC;IACvB,cAAc,GAAW,CAAC,CAAC;IAC3B,IAAI,GAAW,CAAC,CAAC;IACjB,WAAW,GAAW,CAAC,CAAC;CAC3B;AAED,MAAM,OAAO,cAAe,SAAQ,SAAS;IAEzC,IAAI,CAAC,kBAA2B,KAAK;QACjC,IAAI,eAAe,EAAE;YACjB,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE;gBAChD,IAAI,IAAI,YAAY,cAAc,IAAI,IAAI,KAAK,IAAI,EAAE;oBACjD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACpB;YACL,CAAC,EAAE,IAAI,CAAC,CAAA;SACX;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QAEf,wDAAwD;QACxD,IAAI,IAAI,CAAC,eAAe,EAAE;YACtB,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;YAC/C,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;SAC7C;QACD,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK;QACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC5B,CAAC;IACD,IAAI;QACA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACnB,CAAC;IAEO,MAAM,CAA0B;IACxC,IAAI,CAAC,KAAa;QACd,IAAI,IAAI,CAAC,eAAe,EAAE;YACtB,uFAAuF;YACvF,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACnE,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,sBAAsB,EAAE,CAAC;YAC7D,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;YACrB,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YACzD,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;YAC1C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACjG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,cAAc,CAAC;SACtD;IACL,CAAC;IAGQ,iBAAiB,CAA2B;IAG5C,IAAI,CAAc;IAGlB,QAAQ,CAAkB;IAG1B,gBAAgB,CAA0B;IAG1C,KAAK,CAAe;IAGpB,KAAK,CAAe;IAGpB,MAAM,CAAe;IAGrB,oBAAoB,CAA8B;IAGlD,yBAAyB,CAAmC;IAG5D,eAAe,CAAyB;IAGxC,YAAY,CAAsB;IAGlC,qBAAqB,CAA+B;IAGpD,oBAAoB,CAA8B;IAGlD,eAAe,CAAyB;IAGxC,WAAW,CAAqB;IAEzC,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAE3C,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,eAAe,EAAE,WAAW,IAAI,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;IAClC,CAAC;IACD,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IACD,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC9B,CAAC;IACD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;IACnE,CAAC;IACD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IACO,YAAY,GAAW,CAAC,CAAC;IAEjC,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAW,CAAC;IAC5B,CAAC;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,KAAK,6BAA6B,CAAC,KAAK,CAAC;IAC7E,CAAC;IAEO,iBAAiB,GAAG,IAAI,UAAU,EAAE,CAAC;IAC7C,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IACO,wBAAwB,GAAG,IAAI,UAAU,EAAE,CAAC;IACpD,IAAI,uBAAuB;QACvB,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACzC,CAAC;IACO,WAAW,GAAG,IAAI,OAAO,EAAE,CAAC;IACpC,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAEO,mBAAmB,GAAW,CAAC,CAAC,CAAC;IACjC,SAAS,GAAY,IAAI,OAAO,EAAE,CAAC;IAC3C,IAAI,QAAQ;QACR,IAAI,IAAI,CAAC,mBAAmB,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;YACtD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YACnD,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;SACrD;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;IACvC,CAAC;IAED,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAEO,SAAS,CAA0B;IACnC,YAAY,CAA2B;IACvC,eAAe,CAAmB;IAClC,UAAU,CAA2B;IAE7C,4BAA4B;IAC5B,6BAA6B;IAC7B,iCAAiC;IACzB,UAAU,CAAY;IACtB,KAAK,GAAW,CAAC,CAAC;IAClB,UAAU,GAAY,IAAI,CAAC;IAC3B,kBAAkB,GAAY,KAAK,CAAC;IAE5C,kCAAkC;IAClC,IAAY,MAAM,CAAC,GAAoB;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,KAAK,YAAY,aAAa,CAAC,KAAK,KAAK,EAAE;gBAC5C,MAAM,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;gBACrC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACxB,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;aACrB;SACJ;QACD,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;IACvB,CAAC;IACO,OAAO,CAAmB;IAElC,kCAAkC;IAClC,IAAY,iBAAiB,CAAC,GAAuB;QACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,GAAG,YAAY,gBAAgB,CAAC,KAAK,KAAK,EAAE;gBAC7C,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;gBACxC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;gBACtB,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;aACrB;SACJ;QACD,IAAI,KAAK,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;SAC1C;QACD,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC;IAClC,CAAC;IACO,kBAAkB,CAAsB;IAEhD,kBAAkB,CAAC,CAAC;QAChB,IAAI,IAAI,CAAC,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;YACnE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBACvC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;aACnD;SACJ;IACL,CAAC;IAED,KAAK;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,sBAAsB,CAA2B,CAAC;QAEhG,IAAI,CAAC,UAAU,GAAG,IAAI,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC;QACzC,0EAA0E;QAC1E,4CAA4C;QAC5C,IAAI;QACJ,QAAQ;QACR;YACI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC3C;QACD,6CAA6C;QAE7C,IAAI,CAAC,YAAY,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAC9C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/E,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,8BAA8B,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3E,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAE3D,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEhC,IAAI,KAAK,EAAE;YACP,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;SACzC;IACL,CAAC;IAED,KAAK;QACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACjC,CAAC;IAED,SAAS;QACL,IAAI,CAAC,UAAU,EAAE,gBAAgB,EAAE,CAAC;QACpC,IAAI,CAAC,YAAY,EAAE,gBAAgB,EAAE,CAAC;QACtC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACjD,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;IACpC,CAAC;IAED,QAAQ;QACJ,IAAI,IAAI,CAAC,eAAe;YACpB,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,SAAS;IACT,CAAC;IAED,cAAc;QACV,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QAE1B,IAAI,IAAI,CAAC,YAAY,EAAE;YACnB,6BAA6B;YAC7B,2CAA2C;YAC3C,iEAAiE;YACjE,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,GAAG,EAAE,KAAK,CAAC,EAAE;gBACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACvD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBAC3C,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;oBAC1B,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBACvB;aACJ;YACD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SAChC;QACD,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACnD,CAAC;IAEO,mBAAmB,GAAW,CAAC,CAAC,CAAC;IACjC,QAAQ;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,eAAe,EAAE;YACxE,IAAI,CAAC,mBAAmB,GAAG,GAAG,CAAC,OAAO,CAAC;YACvC,IAAI,CAAC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;SAC1D;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YACpC,OAAO,IAAI,CAAC,OAAO,CAAC;SACvB;QACD,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAE7B,wCAAwC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;QACpC,IAAI,GAAG,EAAE;YACL,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC;SAC/B;QAED,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;QAEtC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;QAC/B,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAClD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC;QACpE,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAEjD,oBAAoB;QACpB,IAAI,YAAY,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE;YAC5D,yDAAyD;YACzD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACpD,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACtB,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACtB,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,0BAA0B,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC1E,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAClD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;SACvD;QAGD,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAClF,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAEO,qBAAqB;QACzB,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,EAAE;YACjD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBACvC,2CAA2C;gBAC3C,IAAI,GAAG,CAAC,cAAc;oBAAE,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC;gBAC7D,MAAM,MAAM,GAAG,GAAG,CAAC,cAAc,EAAE,eAAe,CAAC;gBACnD,IAAI,MAAM,EAAE;oBACR,GAAG,CAAC,cAAe,CAAC,kBAAkB,GAAG,IAAI,CAAC;oBAC9C,kFAAkF;oBAClF,MAAM,GAAG,GAAG,IAAI,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG,CAAC,cAAe,EAAE,MAAM,CAAC,CAAC;oBAC5F,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC;oBAC3B,GAAG,CAAC,kBAAkB,GAAG,GAAG,CAAC,eAAe,CAAC;oBAC7C,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;iBACzC;aACJ;SACJ;IACL,CAAC;CACJ;AApTG;IADC,YAAY,CAAC,uBAAuB,CAAC;yDACe;AAGrD;IADC,YAAY,CAAC,UAAU,CAAC;4CACE;AAG3B;IADC,YAAY,CAAC,cAAc,CAAC;gDACM;AAGnC;IADC,YAAY,CAAC,sBAAsB,CAAC;wDACc;AAGnD;IADC,YAAY,CAAC,WAAW,CAAC;6CACG;AAG7B;IADC,YAAY,CAAC,WAAW,CAAC;6CACG;AAG7B;IADC,YAAY,CAAC,WAAW,CAAC;8CACI;AAG9B;IADC,YAAY,CAAC,0BAA0B,CAAC;4DACkB;AAG3D;IADC,YAAY,CAAC,+BAA+B,CAAC;iEACuB;AAGrE;IADC,YAAY,CAAC,qBAAqB,CAAC;uDACa;AAGjD;IADC,YAAY,CAAC,kBAAkB,CAAC;oDACU;AAG3C;IADC,YAAY,CAAC,2BAA2B,CAAC;6DACmB;AAG7D;IADC,YAAY,CAAC,0BAA0B,CAAC;4DACkB;AAG3D;IADC,YAAY,CAAC,qBAAqB,CAAC;uDACa;AAGjD;IADC,YAAY,CAAC,iBAAiB,CAAC;mDACS;AA8Q7C,MAAM,OAAO,gBAAgB;IAEzB,cAAc,CAAkB;IAChC,eAAe,GAAW,CAAC,CAAC;IAC5B,UAAU,CAAU;IACpB,IAAI,CAAkB;IAEtB,YAAY,CAAC,OAAgB,EAAE,WAAuB;QAClD,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC;QAC/B,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,YAAY,cAAc,CAAC,IAAI,OAAO,EAAE,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE;YACzE,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAmB,CAAC;SAC5F;IACL,CAAC;CACJ"}
@@ -247,6 +247,7 @@ export declare class ShapeModule implements EmitterShape {
247
247
  private _space?;
248
248
  private readonly _worldSpaceMatrix;
249
249
  private readonly _worldSpaceMatrixInverse;
250
+ constructor();
250
251
  update(system: IParticleSystem, _context: Context, simulationSpace: ParticleSystemSimulationSpace, obj: Object3D): void;
251
252
  private updateRotation;
252
253
  /** nebula implementations: */
@@ -508,9 +508,10 @@ export class ShapeModule {
508
508
  _space;
509
509
  _worldSpaceMatrix = new Matrix4();
510
510
  _worldSpaceMatrixInverse = new Matrix4();
511
- // constructor() {
512
- // console.log(this);
513
- // }
511
+ constructor() {
512
+ if (debug)
513
+ console.log(this);
514
+ }
514
515
  update(system, _context, simulationSpace, obj) {
515
516
  this.system = system;
516
517
  this._space = simulationSpace;
@@ -553,6 +554,8 @@ export class ShapeModule {
553
554
  if (this.enabled) {
554
555
  switch (this.shapeType) {
555
556
  case ParticleSystemShapeType.Box:
557
+ if (debug)
558
+ Gizmos.DrawBox(this.position, this.scale, 0xdddddd, 1);
556
559
  this._vector.x = Math.random() * this.scale.x - this.scale.x / 2;
557
560
  this._vector.y = Math.random() * this.scale.y - this.scale.y / 2;
558
561
  this._vector.z = Math.random() * this.scale.z - this.scale.z / 2;
@@ -584,6 +587,9 @@ export class ShapeModule {
584
587
  this._vector.applyQuaternion(this.system.worldQuaternion);
585
588
  this._vector.add(this.system.worldPos);
586
589
  }
590
+ if (debug) {
591
+ Gizmos.DrawSphere(this._vector, .03, 0xff0000, .5, true);
592
+ }
587
593
  }
588
594
  _dir = new Vector3();
589
595
  getDirection(pos) {
@@ -606,14 +612,15 @@ export class ShapeModule {
606
612
  const ry = pos.y;
607
613
  const rz = pos.z;
608
614
  this._dir.set(rx, ry, rz);
609
- this._dir.sub(this.position);
615
+ if (this.system?.worldspace)
616
+ this._dir.sub(this.system.worldPos);
610
617
  break;
611
618
  default:
612
619
  this._dir.set(0, 0, 1);
613
620
  break;
614
621
  }
615
622
  if (this._space === ParticleSystemSimulationSpace.World) {
616
- this._dir.applyMatrix4(this._worldSpaceMatrixInverse);
623
+ this._dir.applyQuaternion(this.system.worldQuaternion);
617
624
  }
618
625
  if (this.updateRotation())
619
626
  this._dir.applyEuler(this._rotation);