@memberjunction/core 6.1.0-edge.6 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/generic/baseEngine.d.ts +52 -1
  2. package/dist/generic/baseEngine.d.ts.map +1 -1
  3. package/dist/generic/baseEngine.js +93 -4
  4. package/dist/generic/baseEngine.js.map +1 -1
  5. package/dist/generic/baseEntity.d.ts +173 -0
  6. package/dist/generic/baseEntity.d.ts.map +1 -1
  7. package/dist/generic/baseEntity.js +357 -12
  8. package/dist/generic/baseEntity.js.map +1 -1
  9. package/dist/generic/entityInfo.d.ts +461 -1
  10. package/dist/generic/entityInfo.d.ts.map +1 -1
  11. package/dist/generic/entityInfo.js +568 -6
  12. package/dist/generic/entityInfo.js.map +1 -1
  13. package/dist/generic/interfaces.d.ts +5 -0
  14. package/dist/generic/interfaces.d.ts.map +1 -1
  15. package/dist/generic/interfaces.js.map +1 -1
  16. package/dist/generic/localCacheManager.d.ts +30 -1
  17. package/dist/generic/localCacheManager.d.ts.map +1 -1
  18. package/dist/generic/localCacheManager.js +48 -1
  19. package/dist/generic/localCacheManager.js.map +1 -1
  20. package/dist/generic/providerBase.d.ts +164 -2
  21. package/dist/generic/providerBase.d.ts.map +1 -1
  22. package/dist/generic/providerBase.js +398 -23
  23. package/dist/generic/providerBase.js.map +1 -1
  24. package/dist/generic/recordChangeFieldSecurity.d.ts +164 -0
  25. package/dist/generic/recordChangeFieldSecurity.d.ts.map +1 -0
  26. package/dist/generic/recordChangeFieldSecurity.js +279 -0
  27. package/dist/generic/recordChangeFieldSecurity.js.map +1 -0
  28. package/dist/generic/saveEntityGraphOperation.d.ts +10 -0
  29. package/dist/generic/saveEntityGraphOperation.d.ts.map +1 -1
  30. package/dist/generic/saveEntityGraphOperation.js +2 -1
  31. package/dist/generic/saveEntityGraphOperation.js.map +1 -1
  32. package/dist/generic/wellKnownUserSource.d.ts +70 -0
  33. package/dist/generic/wellKnownUserSource.d.ts.map +1 -0
  34. package/dist/generic/wellKnownUserSource.js +82 -0
  35. package/dist/generic/wellKnownUserSource.js.map +1 -0
  36. package/dist/index.d.ts +2 -0
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +2 -0
  39. package/dist/index.js.map +1 -1
  40. package/package.json +3 -3
@@ -215,6 +215,14 @@ export declare abstract class BaseEngine<T> extends BaseSingleton<T> implements
215
215
  private _loaded;
216
216
  private _loadingSubject;
217
217
  private _contextUser;
218
+ /**
219
+ * True once {@link ResolveContextUser} has put this engine on the MJ system user. Makes the
220
+ * server-side identity sticky (a later caller cannot displace it) and memoizes the lookup so
221
+ * repeated `Config(forceRefresh, …)` on hot paths does not re-query. A plain flag rather than
222
+ * an ID comparison, so BaseEngine never needs to know WHICH account is the system user —
223
+ * that knowledge stays entirely inside the registered {@link WellKnownUserSource}.
224
+ */
225
+ private _systemUserApplied;
218
226
  private _metadataConfigs;
219
227
  private _dynamicConfigs;
220
228
  private _dataMap;
@@ -410,6 +418,36 @@ export declare abstract class BaseEngine<T> extends BaseSingleton<T> implements
410
418
  * @returns
411
419
  */
412
420
  protected Load(configs: Partial<BaseEnginePropertyConfig>[], provider: IMetadataProvider, forceRefresh?: boolean, contextUser?: UserInfo): Promise<void>;
421
+ /**
422
+ * Engine classes that have already warned that the system user could not be resolved, so a
423
+ * misconfigured deployment says so once per class instead of on every load.
424
+ */
425
+ private static _systemUserFallbackWarned;
426
+ /**
427
+ * Decides which identity this engine acts as and stores it in {@link _contextUser}.
428
+ *
429
+ * Server-side (`ProviderType.Database`), an engine acts as the MJ system user — full stop.
430
+ * Engine data is infrastructure: the cache is process-wide and shared by every user of the
431
+ * process, so its contents must not depend on whichever caller reached `Config()` first. A
432
+ * caller carrying entity-permission denials, RLS row scoping, or field-level denials would
433
+ * otherwise seal a partial, empty, or permission-constrained cache that then serves everyone
434
+ * until the process restarts. Restricting what any given user may SEE stays where it
435
+ * belongs — at the point data is served to them, not at the point it is cached.
436
+ *
437
+ * There is deliberately only ONE identity here rather than a separate load-user: every load,
438
+ * refresh, hydration and attribution path reads `_contextUser`, so a single field makes the
439
+ * rule structurally impossible to violate — a refresh path added later cannot forget to use
440
+ * the right one. The cost is that {@link ContextUser} reports the system user on a server;
441
+ * see its docs.
442
+ *
443
+ * Client-side (`ProviderType.Network`) this is a plain assignment: a browser hosts one
444
+ * signed-in principal, and the server already strips whatever that user may not see.
445
+ *
446
+ * Degrades, never fails. When no system user can be resolved — no server-side
447
+ * {@link WellKnownUserSource} registered, no such row in this database, a failed lookup —
448
+ * the engine simply acts as the caller, exactly as it did before this existed.
449
+ */
450
+ protected ResolveContextUser(contextUser: UserInfo | undefined): Promise<void>;
413
451
  /**********************************************************************
414
452
  * This section is for handling caching of multiple instances when needed.
415
453
  * We cache engine instances keyed by the **connection** they target — not by
@@ -911,7 +949,20 @@ export declare abstract class BaseEngine<T> extends BaseSingleton<T> implements
911
949
  */
912
950
  get LoadingSubject(): BehaviorSubject<boolean>;
913
951
  /**
914
- * Returns the context user set for the object, this is set via the Config() method.
952
+ * The identity this engine acts as set during `Config()` by {@link ResolveContextUser}.
953
+ *
954
+ * **On a server (`ProviderType.Database`) this is the MJ system user, NOT the caller.**
955
+ * Engine caches are process-wide and shared by every user of the process, so an engine acts
956
+ * as the platform rather than as whoever happened to configure it first. Once resolved it
957
+ * does not change for the life of the engine, even across `Config(forceRefresh, someUser)`.
958
+ *
959
+ * On a client it is the caller, which is the same thing — a browser hosts one principal.
960
+ *
961
+ * Consequences worth knowing when reading this for attribution (`UserID` stamps on rows an
962
+ * engine writes, run and log ownership): server-side those record the system user. That was
963
+ * already true wherever engines are pre-warmed at startup; it is now true consistently
964
+ * rather than depending on which caller arrived first. Code that needs the *acting* user for
965
+ * a specific operation should take it as a parameter, not read it from the engine.
915
966
  */
916
967
  get ContextUser(): UserInfo;
917
968
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"baseEngine.d.ts","sourceRoot":"","sources":["../../src/generic/baseEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseEngine.d.ts","sourceRoot":"","sources":["../../src/generic/baseEngine.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ import { BaseEngineRegistry } from "./baseEngineRegistry.js";
13
13
  import { LocalCacheManager } from "./localCacheManager.js";
14
14
  import { ProviderBase } from "./providerBase.js";
15
15
  import { TransformSimpleObjectToEntityObject } from "./util.js";
16
+ import { WellKnownUserSource } from "./wellKnownUserSource.js";
16
17
  /**
17
18
  * Property configuration for the BaseEngine class to automatically load/set properties on the class.
18
19
  */
@@ -98,6 +99,14 @@ export class BaseEngine extends BaseSingleton {
98
99
  super();
99
100
  this._loaded = false;
100
101
  this._loadingSubject = new BehaviorSubject(false);
102
+ /**
103
+ * True once {@link ResolveContextUser} has put this engine on the MJ system user. Makes the
104
+ * server-side identity sticky (a later caller cannot displace it) and memoizes the lookup so
105
+ * repeated `Config(forceRefresh, …)` on hot paths does not re-query. A plain flag rather than
106
+ * an ID comparison, so BaseEngine never needs to know WHICH account is the system user —
107
+ * that knowledge stays entirely inside the registered {@link WellKnownUserSource}.
108
+ */
109
+ this._systemUserApplied = false;
101
110
  this._metadataConfigs = [];
102
111
  this._dynamicConfigs = new Map();
103
112
  this._dataMap = new Map();
@@ -341,11 +350,14 @@ export class BaseEngine extends BaseSingleton {
341
350
  this._loadingSubject.next(true);
342
351
  try {
343
352
  this.SetProvider(provider);
344
- this._contextUser = contextUser;
353
+ // Decide which identity this engine acts as — the system user on a server, the
354
+ // caller on a client. Sets _contextUser. Must run AFTER SetProvider (so it asks
355
+ // the provider this engine is bound to) and BEFORE any load.
356
+ await this.ResolveContextUser(contextUser);
345
357
  // Register with the engine registry
346
358
  BaseEngineRegistry.Instance.RegisterEngine(this);
347
- await this.LoadConfigs(configs, contextUser, forceRefresh);
348
- await this.AdditionalLoading(contextUser); // Call the additional loading method
359
+ await this.LoadConfigs(configs, this._contextUser, forceRefresh);
360
+ await this.AdditionalLoading(this._contextUser); // Call the additional loading method
349
361
  await this.SetupGlobalEventListener();
350
362
  // Only mark as loaded if all configs loaded successfully.
351
363
  // If any config failed (e.g. network error during MJAPI restart),
@@ -372,6 +384,70 @@ export class BaseEngine extends BaseSingleton {
372
384
  }
373
385
  }
374
386
  }
387
+ /**
388
+ * Engine classes that have already warned that the system user could not be resolved, so a
389
+ * misconfigured deployment says so once per class instead of on every load.
390
+ */
391
+ static { this._systemUserFallbackWarned = new Set(); }
392
+ /**
393
+ * Decides which identity this engine acts as and stores it in {@link _contextUser}.
394
+ *
395
+ * Server-side (`ProviderType.Database`), an engine acts as the MJ system user — full stop.
396
+ * Engine data is infrastructure: the cache is process-wide and shared by every user of the
397
+ * process, so its contents must not depend on whichever caller reached `Config()` first. A
398
+ * caller carrying entity-permission denials, RLS row scoping, or field-level denials would
399
+ * otherwise seal a partial, empty, or permission-constrained cache that then serves everyone
400
+ * until the process restarts. Restricting what any given user may SEE stays where it
401
+ * belongs — at the point data is served to them, not at the point it is cached.
402
+ *
403
+ * There is deliberately only ONE identity here rather than a separate load-user: every load,
404
+ * refresh, hydration and attribution path reads `_contextUser`, so a single field makes the
405
+ * rule structurally impossible to violate — a refresh path added later cannot forget to use
406
+ * the right one. The cost is that {@link ContextUser} reports the system user on a server;
407
+ * see its docs.
408
+ *
409
+ * Client-side (`ProviderType.Network`) this is a plain assignment: a browser hosts one
410
+ * signed-in principal, and the server already strips whatever that user may not see.
411
+ *
412
+ * Degrades, never fails. When no system user can be resolved — no server-side
413
+ * {@link WellKnownUserSource} registered, no such row in this database, a failed lookup —
414
+ * the engine simply acts as the caller, exactly as it did before this existed.
415
+ */
416
+ async ResolveContextUser(contextUser) {
417
+ const provider = this.ProviderToUse;
418
+ if (provider?.ProviderType !== ProviderType.Database) {
419
+ this._contextUser = contextUser; // client — the caller is the only identity there is
420
+ return;
421
+ }
422
+ // Once a server-side engine is acting as the system user it STAYS that way. A later
423
+ // caller — including `Config(forceRefresh, someUser)` — must not pull the shared cache
424
+ // back under their own permissions. This doubles as the lookup memo: hot paths that
425
+ // force-refresh per request (RunTemplateResolver renders, for one) would otherwise put a
426
+ // database round trip on every call to re-derive an identity that never changes.
427
+ if (this._systemUserApplied) {
428
+ return;
429
+ }
430
+ this._contextUser = contextUser;
431
+ let systemUser = null;
432
+ try {
433
+ const source = MJGlobal.Instance.ClassFactory.CreateInstance(WellKnownUserSource);
434
+ systemUser = (await source?.GetSystemUser(provider)) ?? null;
435
+ }
436
+ catch (e) {
437
+ // The contract says implementations never throw; don't take their word for it.
438
+ LogError(e);
439
+ }
440
+ if (systemUser) {
441
+ this._contextUser = systemUser;
442
+ this._systemUserApplied = true;
443
+ }
444
+ else if (!BaseEngine._systemUserFallbackWarned.has(this.constructor.name)) {
445
+ BaseEngine._systemUserFallbackWarned.add(this.constructor.name);
446
+ LogStatus(`${this.constructor.name}: could not resolve the MJ system user for server-side loading — ` +
447
+ `falling back to the calling user. This engine's data will reflect that user's permissions ` +
448
+ `and is cached process-wide, so a restricted caller can leave incomplete data cached for everyone.`);
449
+ }
450
+ }
375
451
  /**********************************************************************
376
452
  * This section is for handling caching of multiple instances when needed.
377
453
  * We cache engine instances keyed by the **connection** they target — not by
@@ -1833,7 +1909,20 @@ export class BaseEngine extends BaseSingleton {
1833
1909
  return this._loadingSubject;
1834
1910
  }
1835
1911
  /**
1836
- * Returns the context user set for the object, this is set via the Config() method.
1912
+ * The identity this engine acts as set during `Config()` by {@link ResolveContextUser}.
1913
+ *
1914
+ * **On a server (`ProviderType.Database`) this is the MJ system user, NOT the caller.**
1915
+ * Engine caches are process-wide and shared by every user of the process, so an engine acts
1916
+ * as the platform rather than as whoever happened to configure it first. Once resolved it
1917
+ * does not change for the life of the engine, even across `Config(forceRefresh, someUser)`.
1918
+ *
1919
+ * On a client it is the caller, which is the same thing — a browser hosts one principal.
1920
+ *
1921
+ * Consequences worth knowing when reading this for attribution (`UserID` stamps on rows an
1922
+ * engine writes, run and log ownership): server-side those record the system user. That was
1923
+ * already true wherever engines are pre-warmed at startup; it is now true consistently
1924
+ * rather than depending on which caller arrived first. Code that needs the *acting* user for
1925
+ * a specific operation should take it as a parameter, not read it from the engine.
1837
1926
  */
1838
1927
  get ContextUser() {
1839
1928
  return this._contextUser;
@@ -1 +1 @@
1
- {"version":3,"file":"baseEngine.js","sourceRoot":"","sources":["../../src/generic/baseEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAW,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACnG,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAc,OAAO,EAAE,MAAM,MAAM,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAG9D,OAAO,EAAE,OAAO,EAAiB,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAiF,YAAY,EAAiB,MAAM,cAAc,CAAC;AAC1I,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAqB,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,mCAAmC,EAAE,MAAM,QAAQ,CAAC;AAC7D;;GAEG;AACH,MAAM,OAAO,wBAAyB,SAAQ,QAAQ;IAmGlD,YAAY,IAAwC;QAChD,KAAK,EAAE,CAAC;QAnGZ;;WAEG;QACH,SAAI,GAAyB,QAAQ,CAAC;QAqBtC;;;;WAIG;QACH,0BAAqB,GAAiD,iBAAiB,CAAC;QAaxF;;;;;WAKG;QACH,gBAAW,GAAa,IAAI,CAAC;QAoDzB,+CAA+C;QAC/C,IAAI,IAAI;YACJ,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;CACJ;AA4FD;;;;;;;GAOG;AACH,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IAMjD,YAAY,UAAkB,EAAE,cAAwB;QACpD,KAAK,CACD,GAAG,UAAU,sDAAsD;YACnE,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,yCAAyC;YACzE,wDAAwD,CAC3D,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;QACzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACzC,CAAC;CACJ;AAED,MAAM,OAAgB,UAAc,SAAQ,aAAgB;IA2BxD;;;;;;;;;OASG;IACI,eAAe,CAAuB,YAAoB;QAC7D,IAAI,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,OAAO,GAAK,IAAgC,CAAC,YAAY,CAA8B,IAAI,EAAE,CAAC;YACpG,OAAO,GAAG,IAAI,eAAe,CAAe,OAAO,CAAC,CAAC;YACrD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,OAAO,CAAC,YAAY,EAAqB,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACO,kBAAkB,CAAC,YAAoB;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,OAAO,GAAK,IAAgC,CAAC,YAAY,CAA8B,IAAI,EAAE,CAAC;QACpG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH;QACI,KAAK,EAAE,CAAC;QA9DJ,YAAO,GAAY,KAAK,CAAC;QACzB,oBAAe,GAA6B,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;QAEhF,qBAAgB,GAA+B,EAAE,CAAC;QAClD,oBAAe,GAA0C,IAAI,GAAG,EAAE,CAAC;QACnE,aAAQ,GAAoC,IAAI,GAAG,EAAE,CAAC;QACtD,sBAAiB,GAAwB,IAAI,GAAG,EAAE,CAAC;QACnD,yBAAoB,GAA0C,IAAI,GAAG,EAAE,CAAC;QAExE,iBAAY,GAAG,IAAI,OAAO,EAAyB,CAAC;QACpD,8BAAyB,GAAmB,EAAE,CAAC;QAC/C,sBAAiB,GAA+C,IAAI,GAAG,EAAE,CAAC;QAC1E,6BAAwB,GAAY,KAAK,CAAC;QAC1C,uBAAkB,GAAa,EAAE,CAAC;QAC1C;;;;;;;;;WASG;QACK,6BAAwB,GAAwB,IAAI,GAAG,EAAE,CAAC;QA6tB1D,6BAAwB,GAAW,IAAI,CAAC,CAAC,sDAAsD;QAqP/F,6BAAwB,GAA+C,IAAI,GAAG,EAAE,CAAC;IA36BzF,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IAC5C,CAAC;IAED;;;;;;;;;OASG;IACO,gBAAgB,CACtB,MAAgC,EAChC,IAAe,EACf,aAAsD,SAAS,EAC/D,cAA2B;QAE3B,MAAM,KAAK,GAA0B;YACjC,MAAM;YACN,UAAU;YACV,IAAI;YACJ,cAAc;SACjB,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACH,IAAW,uBAAuB;QAC9B,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACO,aAAa,CAAI,YAAoB;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC9C,IAAI,KAAK,EAAE,gBAAgB,EAAE,CAAC;YAC1B,MAAM,IAAI,0BAA0B,CAChC,IAAI,CAAC,WAAW,CAAC,IAAI,EACrB,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAClE,CAAC;QACN,CAAC;QACD,OAAS,IAAgC,CAAC,YAAY,CAAS,IAAI,EAAE,CAAC;IAC1E,CAAC;IAED;;;OAGG;IACI,+BAA+B,CAAC,YAAoB;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC9C,OAAO,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,IAAW,6BAA6B;QACpC,OAAO,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAc,uBAAuB;QACjC,OAAO,eAAe,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,aAAa,CAAC,WAAsB,EAAE,QAA4B;QAC3E,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,+DAA+D;IAC/G,CAAC;IAED;;;OAGG;IACH,IAAW,oBAAoB;QAC3B,OAA8B,IAAI,CAAC,aAAa,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,IAAW,OAAO;QACd,0DAA0D;QAC1D,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC7D,CAAC;IAWD;;;;;;;;;;;;;;;;OAgBG;IACI,KAAK,CAAC,QAAQ,CAAC,UAA2B,EAAE;QAC/C,6DAA6D;QAC7D,OAAO,MAAM,IAAI,CAAC,MAAM,CACpB,OAAO,CAAC,YAAY,IAAI,KAAK,EAC7B,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,QAAQ,CACnB,CAAC;IACN,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACI,KAAK,CAAC,YAAY,CAAC,WAAsB,EAAE,QAA4B;QAC1E,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;OAMG;IACO,KAAK,CAAC,IAAI,CAAC,OAA4C,EAAE,QAA2B,EAAE,eAAwB,KAAK,EAAE,WAAsB;QACjJ,IAAI,IAAI,CAAC,aAAa,EAAE,YAAY,KAAK,YAAY,CAAC,QAAQ,IAAI,CAAC,WAAW;YAC1E,MAAM,IAAI,KAAK,CAAC,uFAAuF,CAAC,CAAA;QAC5G,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;YAC7B,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBACjC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE;oBAC5D,IAAI,CAAC,OAAO,EAAE,CAAC;wBACX,YAAY,CAAC,WAAW,EAAE,CAAC;wBAC3B,OAAO,EAAE,CAAC;oBACd,CAAC;gBACL,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,YAAY,EAAE,CAAC;YAChC,oEAAoE;YACpE,kEAAkE;YAClE,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC;YACtC,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;YAE7B,2CAA2C;YAC3C,MAAM,WAAW,GAAG,OAAO;iBACtB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,UAAU,CAAC;iBACjD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,YAAY,GAAG,OAAO;iBACvB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,WAAW,CAAC;iBAClD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YAE7B,MAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAChD,QAAQ,EACR,aAAa,EACb;gBACI,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;gBAClC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;gBAC/C,WAAW,EAAE,OAAO,CAAC,MAAM;gBAC3B,WAAW;gBACX,YAAY;aACf,EACD,WAAW,EAAE,EAAE,CAClB,CAAC;YAEF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC;gBACD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC3B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;gBAEhC,oCAAoC;gBACpC,kBAAkB,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAEjD,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;gBAC3D,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC,qCAAqC;gBAChF,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAEtC,0DAA0D;gBAC1D,kEAAkE;gBAClE,iFAAiF;gBACjF,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;gBAChG,IAAI,WAAW,EAAE,CAAC;oBACd,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;yBAClD,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;yBAChD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,WAAW,IAAI,GAAG,CAAC,CAAC;oBACzE,QAAQ,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,6BAA6B,WAAW,CAAC,MAAM,8BAA8B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;gBAC9L,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;oBACpB,wCAAwC;oBACxC,kBAAkB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACzD,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,QAAQ,CAAC,CAAC,CAAC,CAAC;YAChB,CAAC;oBAAS,CAAC;gBACP,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChD,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;2EAeuE;aACxD,uBAAkB,GAAoD,IAAI,GAAG,EAAE,AAA7D,CAA8D;IAE/F;;;;;OAKG;IACI,MAAM,CAAC,mBAAmB,CAAI,QAA2B,EAAE,mBAA4C;QAC1G,MAAM,aAAa,GAAG,QAAQ,EAAE,wBAAwB,CAAC;QACzD,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,gBAAgB,GAAG,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC1E,IAAI,gBAAgB,EAAE,CAAC;gBACnB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;gBAC3D,IAAI,QAAQ,EAAE,CAAC;oBACX,OAAO,QAAyB,CAAC;gBACrC,CAAC;YACL,CAAC;QACL,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC9C,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,kEAAkE;QACrG,OAAO,WAAW,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,yBAAyB,CAAC,aAAqB;QACzD,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;OAMG;IACO,WAAW,CAAC,QAA2B;QAC7C,oFAAoF;QACpF,uEAAuE;QACvE,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC9B,CAAC;QACD,oFAAoF;QACpF,sFAAsF;QACtF,uEAAuE;QACvE,IAAI,CAAC,2BAA2B,CAAC,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC;IACrE,CAAC;IAES,2BAA2B,CAAC,QAA2B;QAC7D,IAAI,CAAC,QAAQ;YAAE,OAAO,CAAC,kEAAkE;QACzF,MAAM,aAAa,GAAG,QAAQ,CAAC,wBAAwB,CAAC;QACxD,IAAI,CAAC,aAAa;YAAE,OAAO,CAAC,wDAAwD;QACpF,IAAI,gBAAgB,GAAG,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACxE,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACpB,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;YAC7B,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1C,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACjD,CAAC;IACL,CAAC;IAMD;;;;OAIG;IACO,KAAK,CAAC,wBAAwB;QACpC,IAAI,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBAC/D,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;oBAC1C,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACO,KAAK,CAAC,qBAAqB,CAAC,KAAc;QAChD,8GAA8G;QAC9G,6CAA6C;QAC7C,IAAI,KAAK,CAAC,KAAK,KAAK,WAAW,CAAC,cAAc,IAAI,KAAK,CAAC,SAAS,KAAK,UAAU,CAAC,aAAa,EAAE,CAAC;YAC7F,0BAA0B;YAC1B,MAAM,eAAe,GAAoB,KAAK,CAAC,IAAI,CAAC;YACpD,OAAO,MAAM,IAAI,CAAC,+BAA+B,CAAC,eAAe,CAAC,CAAC;QACvE,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACO,KAAK,CAAC,+BAA+B,CAAC,KAAsB;QAClE,IAAI,CAAC;YACD,mEAAmE;YACnE,kEAAkE;YAClE,8DAA8D;YAC9D,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAChC,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;gBACrC,OAAO,MAAM,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;YACzD,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACnD,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;gBACpE,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAgC,EAAE,EAAE;oBAC7E,OAAO,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;gBACvG,CAAC,CAAC,CAAC;gBAEH,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/B,OAAO,IAAI,CAAC;gBAChB,CAAC;gBAED,2DAA2D;gBAC3D,MAAM,kBAAkB,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;gBAEjG,IAAI,kBAAkB,EAAE,CAAC;oBACrB,6EAA6E;oBAC7E,wEAAwE;oBACxE,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;wBACnC,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;oBACrD,CAAC;oBACD,OAAO,IAAI,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,4DAA4D;oBAC5D,OAAO,IAAI,CAAC,iCAAiC,CAAC,KAAK,CAAC,CAAC;gBACzD,CAAC;YACL,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACO,KAAK,CAAC,2BAA2B,CAAC,KAAsB;QAC9D,IAAI,CAAC;YACD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;YAC1D,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC,CAAC,gCAAgC;YACjD,CAAC;YAED,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAgC,EAAE,EAAE;gBAC7E,OAAO,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC;YAC5G,CAAC,CAAC,CAAC;YAEH,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/B,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAA8C,CAAC;YACrE,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;YAE/B,8DAA8D;YAC9D,IAAI,MAAM,KAAK,MAAM,IAAI,OAAO,EAAE,UAAU,EAAE,CAAC;gBAC3C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;gBAClG,IAAI,OAAO,EAAE,CAAC;oBACV,OAAO,IAAI,CAAC;gBAChB,CAAC;gBACD,sDAAsD;YAC1D,CAAC;YAED,8DAA8D;YAC9D,IAAI,MAAM,KAAK,QAAQ,IAAI,OAAO,EAAE,gBAAgB,EAAE,CAAC;gBACnD,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;gBAClF,IAAI,OAAO,EAAE,CAAC;oBACV,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAChD,OAAO,IAAI,CAAC;gBAChB,CAAC;gBACD,uDAAuD;YAC3D,CAAC;YAED,mFAAmF;YACnF,yEAAyE;YACzE,kFAAkF;YAClF,kCAAkC;YAClC,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;gBACnC,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;gBAC7E,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;oBACtD,wEAAwE;oBACxE,mEAAmE;oBACnE,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC9C,CAAC;gBACD,YAAY,EAAE,CAAC;YACnB,CAAC;YAED,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;gBACnB,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACpD,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACO,KAAK,CAAC,qBAAqB,CACjC,eAA2C,EAC3C,UAAkB,EAClB,cAAsB;QAEtB,IAAI,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC9C,kFAAkF;YAClF,gFAAgF;YAChF,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC9B,MAAM,kBAAkB,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,UAAW,CAAC;YAC1D,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,eAAe,CAAC,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/E,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YAEtC,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;gBACnC,oFAAoF;gBACpF,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,8BAA8B,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7E,OAAO,KAAK,CAAC;gBACjB,CAAC;gBAED,MAAM,WAAW,GAAI,IAAgC,CAAC,MAAM,CAAC,YAAY,CAA6B,CAAC;gBACvG,IAAI,CAAC,WAAW;oBAAE,SAAS;gBAE3B,MAAM,KAAK,GAAG,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBACrE,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oBACb,WAAW,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;oBAC5B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;oBACvH,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACjE,CAAC;qBAAM,CAAC;oBACJ,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;oBACvH,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBAC9D,CAAC;gBACD,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBAC7C,gEAAgE;gBAChE,2DAA2D;YAC/D,CAAC;YAED,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,OAAO,KAAK,CAAC,CAAC,4BAA4B;QAC9C,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACO,iBAAiB,CACvB,eAA2C,EAC3C,oBAA4B;QAE5B,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAgD,CAAC;YACjG,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAC;YAErD,MAAM,SAAS,GAAG,YAAY,CAAC,iBAAiB,CAC5C,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAC/D,CAAC;YAEF,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;gBACnC,MAAM,WAAW,GAAI,IAAgC,CAAC,MAAM,CAAC,YAAY,CAA6B,CAAC;gBACvG,IAAI,CAAC,WAAW;oBAAE,SAAS;gBAE3B,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;gBAEzE,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oBACb,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;oBACnC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBAC7B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;oBACvH,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAC9D,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBACjD,CAAC;gBACD,2DAA2D;YAC/D,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACO,KAAK,CAAC,iCAAiC,CAAC,KAAsB;QACpE,IAAI,CAAC;YACD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;YAEzE,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7C,mDAAmD;gBACnD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACzC,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,UAAU,CACpD,CAAC;gBAEF,4DAA4D;gBAC5D,MAAM,iBAAiB,GAAG,cAAc,EAAE,YAAY,IAAI,IAAI,CAAC,uBAAuB,CAAC;gBAEvF,MAAM,OAAO,GAAG,IAAI,OAAO,EAAmB,CAAC;gBAC/C,OAAO,CAAC,IAAI;gBACR,6EAA6E;gBAC7E,8EAA8E;gBAC9E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,CAAC,EACrD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CACpC,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;oBACxB,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;gBAC1C,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACvD,CAAC;YAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEtD,OAAO,IAAI,CAAC;QAChB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAGD;;;;;;;OAOG;IACH,IAAc,uBAAuB;QACjC,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACzC,CAAC;IAED;;;;;OAKG;IACO,KAAK,CAAC,kBAAkB,CAAC,KAAsB;QACrD,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACO,KAAK,CAAC,mBAAmB,CAAC,MAAyB;QACzD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO;QACX,CAAC;QACD,IAAI,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;YAC7E,IAAI,YAAY,GAAG,CAAC,CAAC;YAErB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAChC,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,UAAU,EAAE,CAAC;oBAC3G,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACxG,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;oBAE/E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzB,yEAAyE;wBACzE,IAAI,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC;4BACvC,yDAAyD;4BACzD,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;gCAC1B,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;4BACvD,CAAC;wBACL,CAAC;6BAAM,CAAC;4BACJ,uEAAuE;4BACvE,uEAAuE;4BACvE,qEAAqE;4BACrE,uEAAuE;4BACvE,kEAAkE;4BAClE,wEAAwE;4BACxE,yEAAyE;4BACzE,kDAAkD;4BAClD,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;4BAC7E,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;gCACtD,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;4BAC9C,CAAC;4BACD,YAAY,EAAE,CAAC;wBACnB,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACJ,mEAAmE;wBACnE,wEAAwE;wBACxE,2DAA2D;wBAC3D,MAAM,UAAU,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;wBAC1F,IAAI,UAAU,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;4BAC3D,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,UAAU,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;wBAC9G,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;YAED,qFAAqF;YACrF,kGAAkG;YAClG,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;gBACnB,qHAAqH;gBACrH,sHAAsH;gBACtH,sHAAsH;gBACtH,sEAAsE;gBACtE,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACpD,CAAC;QACL,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACO,sBAAsB,CAAC,MAAgC,EAAE,KAAsB;QACrF,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACxB,IAAI,KAAK,CAAC,WAAW,KAAK,QAAQ,IAAI,KAAK,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;gBACnE,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;oBACxD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAC/F,CAAC;YACL,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QACjC,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAI,KAAK,CAAC,OAA+D,EAAE,SAAS,CAAC;YACpG,OAAO,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC;gBACtE,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE;gBACvB,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QAC/B,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAChC,CAAC;IAED;;;;;;;OAOG;IACO,sBAAsB,CAAC,MAAgC,EAAE,MAAkB;QACjF,MAAM,WAAW,GAAI,IAAgC,CAAC,MAAM,CAAC,YAAY,CAA6B,CAAC;QACvG,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACO,yBAAyB,CAAC,MAAgC,EAAE,MAAkB,EAAE,eAAyC;QAC/H,MAAM,WAAW,GAAI,IAAgC,CAAC,MAAM,CAAC,YAAY,CAA6B,CAAC;QACvG,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,kCAAkC;QAClC,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,qEAAqE;QACrE,IAAI,eAAe,EAAE,CAAC;YAClB,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,GAAG,CAAC,2BAA2B,CAAC,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;YACpE,IAAI,GAAG,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,CAAC;gBAClF,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3D,CAAC;QACL,CAAC;QAED,sDAAsD;QACtD,OAAO,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACO,4BAA4B,CAClC,MAAgC,EAChC,UAAuC,EACvC,MAAkB;QAElB,6EAA6E;QAC7E,4EAA4E;QAC5E,6DAA6D;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACxD,IAAI,QAAQ,EAAE,gBAAgB,EAAE,CAAC;YAC7B,OAAO;QACX,CAAC;QACD,MAAM,WAAW,GAAI,IAAgC,CAAC,MAAM,CAAC,YAAY,CAA6B,CAAC;QACvG,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,OAAO;QACX,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAC/D,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACO,wBAAwB,CAAC,YAAoB;QACnD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACxE,CAAC;IAID;;;OAGG;IACH,IAAc,sBAAsB;QAChC,OAAO,CAAC,CAAC;IACb,CAAC;IAED;;;;;;;;;;;;OAYG;IACO,yBAAyB,CAAC,MAAgC,EAAE,OAAe;QACjF,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC;QAChC,IAAI,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,+CAA+C;QAC3D,CAAC;QACD,IAAI,OAAO,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACxC,QAAQ,CAAC,uDAAuD,MAAM,CAAC,UAAU,MAAM,GAAG,UAAU,IAAI,CAAC,sBAAsB,UAAU,CAAC,CAAC;YAC3I,OAAO;QACX,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC;QAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;YAChC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC1C,IAAI,CAAC;gBACD,6EAA6E;gBAC7E,2EAA2E;gBAC3E,8EAA8E;gBAC9E,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;gBAC7E,IAAI,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrC,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACpD,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;gBACxD,CAAC;YACL,CAAC;YACD,OAAO,CAAC,EAAE,CAAC;gBACP,QAAQ,CAAC,CAAC,CAAC,CAAC;YAChB,CAAC;QACL,CAAC,EAAE,OAAO,CAAC,CAAC;QACZ,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAClD,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACO,uBAAuB,CAAC,MAAgC,EAAE,6BAAsC,KAAK;QAC3G,uEAAuE;QACvE,2DAA2D;QAC3D,0EAA0E;QAC1E,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,yEAAyE;QACzE,6DAA6D;QAC7D,uEAAuE;QACvE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,+EAA+E;QAC/E,+EAA+E;QAC/E,iFAAiF;QACjF,iFAAiF;QACjF,6EAA6E;QAC7E,yBAAyB;QACzB,MAAM,mBAAmB,GAAG,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC,uBAAuB,CAAC;QAC9E,IAAI,mBAAmB,KAAK,QAAQ,EAAE,CAAC;YACnC,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,2DAA2D;QAC3D,2EAA2E;QAC3E,0EAA0E;QAC1E,IAAI,CAAC,0BAA0B,IAAI,IAAI,CAAC,4BAA4B,EAAE,EAAE,CAAC;YACrE,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACO,4BAA4B;QAClC,wDAAwD;QACxD,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACvC,MAAM,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAElD,0EAA0E;QAC1E,0CAA0C;QAC1C,OAAO,aAAa,CAAC,iBAAiB,KAAK,SAAS,CAAC,iBAAiB,CAAC;IAC3E,CAAC;IAED;;;;;;;;;;;OAWG;IACO,KAAK,CAAC,sBAAsB,CAAC,MAAgC,EAAE,KAAsB;QAC3F,MAAM,WAAW,GAAI,IAAgC,CAAC,MAAM,CAAC,YAAY,CAA6B,CAAC;QACvG,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,uCAAuC;YACvC,OAAO;QACX,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC;QAEhC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACxB,mFAAmF;YACnF,sFAAsF;YACtF,qFAAqF;YACrF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,QAAQ,CAAC,iEAAiE,MAAM,CAAC,UAAU,+BAA+B,CAAC,CAAC;gBAC5H,OAAO;YACX,CAAC;YAED,IAAI,KAAK,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;gBACjC,sEAAsE;gBACtE,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,CAAC,WAAW,EAAE,CAAC;oBACf,wFAAwF;oBACxF,MAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;oBAC1E,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;wBAClB,yCAAyC;wBACzC,WAAW,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC;wBACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;wBACvH,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;oBACjE,CAAC;yBAAM,CAAC;wBACJ,kCAAkC;wBAClC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;wBACvH,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;oBAC9D,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,0EAA0E;oBAC1E,0EAA0E;oBAC1E,oEAAoE;oBACpE,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBAC9D,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,kEAAkE;gBAClE,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,CAAC,WAAW,EAAE,CAAC;oBACf,4CAA4C;oBAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;oBACrE,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;wBACb,WAAW,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;wBAC5B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;wBACvH,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;oBACjE,CAAC;yBAAM,CAAC;wBACJ,8DAA8D;wBAC9D,+EAA+E;wBAC/E,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;wBACvH,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;oBAC9D,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,0EAA0E;oBAC1E,4EAA4E;oBAC5E,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACjE,CAAC;YACL,CAAC;QACL,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACjC,oDAAoD;YACpD,IAAI,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACxC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACZ,0DAA0D;gBAC1D,KAAK,GAAG,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACnE,CAAC;YAED,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACb,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC7B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;gBACvH,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACjE,CAAC;QACL,CAAC;QAED,2FAA2F;QAC3F,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAE7C,qEAAqE;QACrE,iEAAiE;QACjE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;gBAClD,oEAAoE;gBACpE,SAAS,CAAC,8CAA8C,MAAM,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC,CAAC;YACvF,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED;;;;OAIG;IACO,KAAK,CAAC,mBAAmB,CAAC,MAAkB,EAAE,MAAgC;QACpF,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC;YACpC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACZ,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAa,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/F,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,MAAM,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACO,KAAK,CAAC,uBAAuB,CAAC,MAAgC,EAAE,KAAsB;QAC5F,0DAA0D;QAC1D,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC5C,OAAO;QACX,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC;QAEhC,yEAAyE;QACzE,wEAAwE;QACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC;QACpC,IAAI,gBAAoC,CAAC;QACzC,IAAI,QAAQ,IAAI,0BAA0B,IAAI,QAAQ,EAAE,CAAC;YACrD,gBAAgB,GAAI,QAAyB,CAAC,wBAAwB,CAAC;QAC3E,CAAC;QAED,gFAAgF;QAChF,mFAAmF;QACnF,MAAM,WAAW,GAAG,iBAAiB,CAAC,QAAQ,CAAC,0BAA0B,CACrE,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,EACxC,gBAAgB,CACnB,CAAC;QAEF,0DAA0D;QAC1D,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC;QAC9B,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,CAAC;YAC3F,SAAS,CAAC,mFAAmF,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;YAClH,OAAO;QACX,CAAC;QAED,4EAA4E;QAC5E,kFAAkF;QAClF,kFAAkF;QAClF,iFAAiF;QACjF,2EAA2E;QAC3E,uEAAuE;QACvE,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAkC,CAAC;QACnF,MAAM,SAAS,GAAG,YAAY;YAC1B,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE;YACtC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE/B,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,MAAM,iBAAiB,CAAC,QAAQ,CAAC,kBAAkB,CAC/C,WAAW,EACX,GAAG,EACH,SAAS,CACZ,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,iBAAiB,CAAC,QAAQ,CAAC,kBAAkB,CAC/C,WAAW,EACX,UAAU,EACV,GAAG,EACH,SAAS,CACZ,CAAC;QACN,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACO,4BAA4B,CAAC,SAAuB,EAAE,YAAwB;QACpF,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC;QACxD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3C,mEAAmE;YACnE,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;YACnD,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC,CAAC;QACzE,CAAC;QAED,yCAAyC;QACzC,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAE,YAAmD,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAE7G,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;YAC3B,iCAAiC;YACjC,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;gBACjC,MAAM,WAAW,GAAI,CAAwC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBACvE,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;gBACzC,4EAA4E;gBAC5E,gFAAgF;gBAChF,mFAAmF;gBACnF,gFAAgF;gBAChF,2EAA2E;gBAC3E,iFAAiF;gBACjF,kDAAkD;gBAClD,IAAI,EAAE,CAAC,kBAAkB,EAAE,CAAC;oBACxB,OAAO,UAAU,CAAC,WAAwC,EAAE,WAAwC,CAAC,CAAC;gBAC1G,CAAC;gBACD,OAAO,WAAW,KAAK,WAAW,CAAC;YACvC,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAID;;;;OAIG;IACO,qBAAqB,CAAC,GAAQ;QACpC,4EAA4E;QAC5E,IAAI,GAAG,YAAY,wBAAwB;YACvC,OAAO,GAAG,CAAC;;YAEX,OAAO,IAAI,wBAAwB,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC;IAED;;;;;;OAMG;IACO,KAAK,CAAC,WAAW,CAAC,OAA4C,EAAE,WAAqB,EAAE,cAAuB,KAAK;QACzH,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;QAExE,iJAAiJ;QACjJ,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;QAC7E,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAE/E,wEAAwE;QACxE,sEAAsE;QACtE,yEAAyE;QACzE,uEAAuE;QACvE,MAAM,mBAAmB,GAAG,IAAI,CAAC,yBAAyB,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QAEvF,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;YACrF,IAAI,CAAC,yBAAyB,CAAC,mBAAmB,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;QAEnG,kEAAkE;QAClE,IAAI,CAAC,4BAA4B,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;;;OAUG;IACO,yBAAyB,CAAC,OAAmC,EAAE,WAAqB;QAC1F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC;QAEzC,+EAA+E;QAC/E,8EAA8E;QAC9E,MAAM,IAAI,GAAG,WAAW,IAAI,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC;QAC5D,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC,CAAC,2DAA2D;QAEtF,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAC9B,MAAM,cAAc,GAAa,EAAE,CAAC;QAEpC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,UAAU;gBAAE,SAAS;YACjC,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,CAAC,UAAU;gBAAE,SAAS,CAAC,iDAAiD;YAC5E,MAAM,KAAK,GAAG,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC3B,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC3C,CAAC;QACL,CAAC;QAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,SAAS,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,cAAc,OAAO,CAAC,MAAM,4BAA4B,IAAI,CAAC,KAAK,8BAA8B,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAE/J,kEAAkE;YAClE,+EAA+E;YAC/E,0EAA0E;YAC1E,2CAA2C;YAC3C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC3B,IAAI,MAAM,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;oBAC9B,IAAgC,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;gBAChE,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE;oBACnC,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,IAAI,EAAE,EAAE;oBACR,kBAAkB,EAAE,IAAI;oBACxB,gBAAgB,EAAE,IAAI;iBACzB,CAAC,CAAC;YACP,CAAC;YAED,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;YACrC,IAAI,CAAC,kBAAkB,GAAG,cAAc,CAAC;YAEzC,OAAO,EAAE,CAAC,CAAC,iDAAiD;QAChE,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACO,KAAK,CAAC,gBAAgB,CAAC,MAAgC,EAAE,WAAqB,EAAE,cAAuB,KAAK;QAClH,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;YACzB,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;;YAE5E,OAAO,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IACnF,CAAC;IAED;;;;OAIG;IACO,kBAAkB,CAAC,YAAoB;QAC7C,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACxE,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACO,qBAAqB,CAAC,YAAoB,EAAE,UAAkB;QACpE,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,UAAU,CAAC;IAC1E,CAAC;IAED;;;;;;OAMG;IACO,2BAA2B,CAAC,MAAgC,EAAE,cAAuB,KAAK;QAChG,OAAO;YACH,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC,uBAAuB;YAC7D,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,aAAa,EAAE,IAAI,EAAE,0EAA0E;YAC/F,WAAW,EAAE,IAAI,EAAI,sEAAsE;YAC3F,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,WAAW,EAAE,WAAW;SACV,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACO,KAAK,CAAC,sBAAsB,CAAC,MAAgC,EAAE,WAAqB,EAAE,cAAuB,KAAK;QACxH,qFAAqF;QACrF,wFAAwF;QACxF,+EAA+E;QAC/E,uFAAuF;QACvF,sEAAsE;QACtE,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAChE,MAAM,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACpC,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;QAEpG,oFAAoF;QACpF,gFAAgF;QAChF,+EAA+E;QAC/E,iFAAiF;QACjF,6CAA6C;QAC7C,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC;YAC/D,OAAO;QACX,CAAC;QAED,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QACzD,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACjD,CAAC;IAED;;;;OAIG;IACO,sBAAsB,CAAC,MAAgC,EAAE,MAAqB,EAAE,WAAsB;QAC5G,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,MAAM,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;gBAC9B,IAAY,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;YACxD,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;YAE1H,yDAAyD;YACzD,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YAE9C,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACpB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;YACpE,CAAC;QACL,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC;YAC9E,yEAAyE;YACzE,0EAA0E;YAC1E,2EAA2E;YAC3E,yEAAyE;YACzE,0EAA0E;YAC1E,uDAAuD;YACvD,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YACnC,SAAS,CAAC,eAAe,MAAM,CAAC,UAAU,6EAA6E,CAAC,CAAC;QAC7H,CAAC;aAAM,CAAC;YACJ,8EAA8E;YAC9E,gEAAgE;YAChE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE;gBACnC,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,IAAI,EAAE,EAAE;gBACR,kBAAkB,EAAE,KAAK;gBACzB,YAAY,EAAE,MAAM,CAAC,YAAY;aACpC,CAAC,CAAC;YACH,QAAQ,CAAC,8BAA8B,MAAM,CAAC,UAAU,SAAS,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QACpH,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACO,8BAA8B,CAAC,UAA8B,EAAE,WAAiC;QACtG,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,0EAA0E;QAC1E,oEAAoE;QACpE,6EAA6E;QAC7E,wDAAwD;QACxD,MAAM,IAAI,GAAG,WAAW,IAAI,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC;QAC5D,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;QAChE,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,IAAI,CAAC,CAAC,2DAA2D;QAC5E,CAAC;QACD,OAAO,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;IACtD,CAAC;IAED;;;;;OAKG;IACO,qBAAqB,CAAC,MAAgC;QAC5D,IAAI,MAAM,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;YAC9B,IAAY,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;QAC5C,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9G,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACO,KAAK,CAAC,yBAAyB,CAAC,OAAmC,EAAE,WAAqB,EAAE,cAAuB,KAAK;QAC9H,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC;YACpC,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;YACvF,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAE5D,mEAAmE;YACnE,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;gBACjE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;gBACjD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;oBACxB,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;gBAC5C,CAAC;YACL,CAAC;YAED,qEAAqE;YACrE,mFAAmF;YACnF,0DAA0D;YAC1D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,kBAAkB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YACrE,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACO,KAAK,CAAC,uBAAuB,CAAC,MAAgC,EAAE,WAAqB,EAAE,cAAuB,KAAK;QACzH,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC;QAC7B,wFAAwF;QACxF,gFAAgF;QAChF,kGAAkG;QAClG,IAAI,MAAyB,CAAC;QAC9B,IAAI,WAAW,EAAE,CAAC;YACd,MAAM,GAAG,MAAM,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,kBAAkB,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAC/G,MAAM,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;QAChF,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,MAAM,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC7F,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,QAAQ,GAAG,6BAA6B,MAAM,CAAC,WAAW,0CAA0C,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YACjI,QAAQ,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;YACjD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE;gBACnC,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,IAAI,EAAE,EAAE;gBACR,kBAAkB,EAAE,KAAK;gBACzB,YAAY,EAAE,QAAQ;aACzB,CAAC,CAAC;YACH,OAAO;QACX,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,YAAY,MAAM,CAAC,WAAW,+BAA+B,CAAC;YAChG,QAAQ,CAAC,sCAAsC,MAAM,CAAC,WAAW,SAAS,MAAM,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC,CAAC;YAC9G,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE;gBACnC,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,IAAI,EAAE,EAAE;gBACR,kBAAkB,EAAE,KAAK;gBACzB,YAAY,EAAE,QAAQ;aACzB,CAAC,CAAC;YACH,OAAO;QACX,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,MAAM,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;gBAC/B,IAAI,MAAM,CAAC,qBAAqB,KAAK,iBAAiB,EAAE,CAAC;oBACrD,MAAM,YAAY,GAAG,EAAE,CAAC;oBACxB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBAChC,8CAA8C;wBAC9C,iCAAiC;wBACjC,MAAM,QAAQ,GAAiB,EAAE,CAAC;wBAClC,KAAI,MAAM,UAAU,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;4BACnC,MAAM,MAAM,GAAe,MAAM,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;4BACjF,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;4BACtC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAC1B,CAAC;wBAED,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;oBACvC,CAAC;oBACA,IAAY,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;gBACtD,CAAC;qBACI,CAAC;oBACF,iEAAiE;oBACjE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBAC/B,IAAY,CAAC,GAAG,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;oBACxE,CAAC;gBACL,CAAC;YACL,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;YAE5H,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACpB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;YACpE,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACO,4BAA4B,CAAC,aAAyC;QAC5E,oEAAoE;QACpE,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACjD,KAAK,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,CAAC,yBAAyB,GAAG,EAAE,CAAC;QAEpC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC5C,OAAO;QACX,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,YAAY,YAAY;YACtE,CAAC,CAAE,IAAI,CAAC,oBAAqC,CAAC,wBAAwB;YACtE,CAAC,CAAC,SAAS,CAAC;QAEhB,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;YACjC,MAAM,WAAW,GAAG,iBAAiB,CAAC,QAAQ,CAAC,0BAA0B,CACrE,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,EACxC,gBAAgB,CACnB,CAAC;YAEF,MAAM,WAAW,GAAG,iBAAiB,CAAC,QAAQ,CAAC,sBAAsB,CACjE,WAAW,EACX,CAAC,KAAwB,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC,CAC1E,CAAC;YACF,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrD,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACO,KAAK,CAAC,qBAAqB,CACjC,MAAgC,EAChC,KAAwB;QAExB,+DAA+D;QAC/D,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YACvC,IAAI,CAAC;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACtC,IAAI,MAAM,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnD,2EAA2E;oBAC3E,6EAA6E;oBAC7E,8EAA8E;oBAC9E,oEAAoE;oBACpE,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;oBAChE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC1E,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC;wBAC/D,OAAO,CAAC,uEAAuE;oBACnF,CAAC;oBACD,IAAI,IAAI,EAAE,CAAC;wBACP,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE;4BAChC,OAAO,EAAE,IAAI;4BACb,OAAO,EAAE,IAAI;4BACb,QAAQ,EAAE,IAAI,CAAC,MAAM;4BACrB,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM;4BAClD,aAAa,EAAE,CAAC;4BAChB,YAAY,EAAE,EAAE;4BAChB,aAAa,EAAE,EAAE;yBACpB,CAAC,CAAC;wBACH,OAAO;oBACX,CAAC;oBACD,2EAA2E;gBAC/E,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,oEAAoE;gBACpE,0EAA0E;gBAC1E,2EAA2E;gBAC3E,kCAAkC;gBAClC,SAAS,CAAC,kDAAkD,MAAM,CAAC,YAAY,2BAA2B,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;YAC3L,CAAC;QACL,CAAC;QACD,iDAAiD;QACjD,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,yBAAyB,CACnC,MAAgC,EAChC,IAAoC;QAEpC,MAAM,mBAAmB,GAAG,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC,uBAAuB,CAAC;QAC9E,IAAI,mBAAmB,KAAK,QAAQ,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,CAAC,yCAAyC;QAC1D,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,CAAC,kEAAkE;QACnF,CAAC;QACD,OAAO,mCAAmC,CACtC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,CACjE,CAAC;IACN,CAAC;IAED;;;;OAIG;IACK,kBAAkB,CAAC,YAAoB,EAAE,UAAkB;QAC/D,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3C,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,CAAC;QAC3E,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,KAA0B,CAAC,CAAC;IACzE,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,gBAAgB,CAAC,MAAgC,EAAE,WAAsB;QAClF,MAAM,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC5C,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,WAAW,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;IACrE,CAAC;IAED;;;OAGG;IACI,mBAAmB,CAAC,YAAoB;QAC3C,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3C,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAChD,CAAC;IACL,CAAC;IAGD;;;OAGG;IACI,KAAK,CAAC,WAAW,CAAC,YAAoB;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,YAAY,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1H,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3D,CAAC;IACL,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,eAAe;QACxB,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACxH,CAAC;IAED;;;OAGG;IACO,KAAK,CAAC,iBAAiB,CAAC,WAAsB;QACpD,0EAA0E;IAC9E,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACI,0BAA0B,CAAC,YAAoB;QAClD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC9C,OAAO,KAAK,EAAE,kBAAkB,IAAI,KAAK,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,IAAW,+BAA+B;QACtC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC3C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,kBAAkB;gBAAE,OAAO,KAAK,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;OAEG;IACO,mBAAmB;QACzB,IAAI,CAAC,IAAI,CAAC,MAAM;YACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IACjE,CAAC"}
1
+ {"version":3,"file":"baseEngine.js","sourceRoot":"","sources":["../../src/generic/baseEngine.ts"],"names":[],"mappings":"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"}