@casual-simulation/aux-vm 3.0.1 → 3.0.2

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.
package/auth/AuxAuth.d.ts CHANGED
@@ -17,7 +17,7 @@ export interface LoginStatus {
17
17
  */
18
18
  authData?: AuthData;
19
19
  }
20
- export declare type LoginUIStatus = LoginUINoStatus | LoginUIEmailStatus | LoginUICheckEmailStatus;
20
+ export declare type LoginUIStatus = LoginUINoStatus | LoginUIEmailStatus | LoginUICheckEmailStatus | LoginUIShowIframe;
21
21
  export interface LoginUINoStatus {
22
22
  page: false;
23
23
  }
@@ -34,12 +34,21 @@ export interface LoginUIEmailStatus {
34
34
  showAcceptTermsOfServiceError?: boolean;
35
35
  showEnterEmailError?: boolean;
36
36
  showInvalidEmailError?: boolean;
37
+ showEnterSmsError?: boolean;
38
+ showInvalidSmsError?: boolean;
37
39
  errorCode?: string;
38
40
  errorMessage?: string;
41
+ /**
42
+ * Whether SMS phone numbers are supported for login.
43
+ */
44
+ supportsSms?: boolean;
39
45
  }
40
46
  export interface LoginUICheckEmailStatus {
41
47
  page: 'check_email';
42
48
  }
49
+ export interface LoginUIShowIframe {
50
+ page: 'show_iframe';
51
+ }
43
52
  /**
44
53
  * Defines an interface for an object that is able to communicate with an authentication service.
45
54
  */
@@ -99,6 +108,14 @@ export interface AuxAuth {
99
108
  * @param acceptedTermsOfService Whether the user accepted the terms of service.
100
109
  */
101
110
  provideEmailAddress(email: string, acceptedTermsOfService: boolean): Promise<void>;
111
+ /**
112
+ * Specifies the SMS phone number and whether the user accepted the terms of service during the login process.
113
+ * Resolves with a validation result that indicates whether an error ocurred and what should be shown to the user.
114
+ * Only supported on protocol version 3 or more.
115
+ * @param sms The SMS phone number that should be used to login.
116
+ * @param acceptedTermsOfService Whether the user accepted the terms of service.
117
+ */
118
+ provideSmsNumber(sms: string, acceptedTermsOfService: boolean): Promise<void>;
102
119
  /**
103
120
  * Cancels the in-progress login attempt.
104
121
  */
@@ -51,6 +51,12 @@ export interface AuthHelperInterface extends SubscriptionLike {
51
51
  * @param acceptedTermsOfService Whether the user accepted the terms of service.
52
52
  */
53
53
  provideEmailAddress(email: string, acceptedTermsOfService: boolean): Promise<void>;
54
+ /**
55
+ * Provides the given email address and whether the user accepted the terms of service for the login flow.
56
+ * @param sms The email address that the user provided.
57
+ * @param acceptedTermsOfService Whether the user accepted the terms of service.
58
+ */
59
+ provideSmsNumber(sms: string, acceptedTermsOfService: boolean): Promise<void>;
54
60
  /**
55
61
  * Cancels the current login if it is using the custom UI flow.
56
62
  */
@@ -10,12 +10,16 @@ export declare class BotHelper extends BaseHelper<PrecalculatedBot> {
10
10
  private static readonly _debug;
11
11
  private _state;
12
12
  private _vm;
13
+ private _batchUpdates;
14
+ private _botUpdates;
15
+ private _batchPending;
16
+ private _batchPromise;
13
17
  /**
14
18
  * Creates a new bot helper.
15
- * @param tree The tree that the bot helper should use.
16
- * @param userBotId The ID of the user's bot.
19
+ * @param vm The VM that is in use.
20
+ * @param batch Whether to batch bot updates together.
17
21
  */
18
- constructor(vm: AuxVM);
22
+ constructor(vm: AuxVM, batch?: boolean);
19
23
  /**
20
24
  * Gets the current local bot state.
21
25
  */
@@ -35,7 +39,7 @@ export declare class BotHelper extends BaseHelper<PrecalculatedBot> {
35
39
  * Updates the given bot with the given data.
36
40
  * @param bot The bot.
37
41
  * @param newData The new data that the bot should have.
38
- */
42
+ */
39
43
  updateBot(bot: Bot, newData: PartialBot): Promise<void>;
40
44
  /**
41
45
  * Creates a new bot with the given ID and tags. Returns the ID of the new bot.
@@ -16,12 +16,15 @@ import { BaseHelper } from './BaseHelper';
16
16
  export class BotHelper extends BaseHelper {
17
17
  /**
18
18
  * Creates a new bot helper.
19
- * @param tree The tree that the bot helper should use.
20
- * @param userBotId The ID of the user's bot.
19
+ * @param vm The VM that is in use.
20
+ * @param batch Whether to batch bot updates together.
21
21
  */
22
- constructor(vm) {
22
+ constructor(vm, batch = true) {
23
23
  super();
24
+ this._botUpdates = [];
25
+ this._batchPending = false;
24
26
  this._vm = vm;
27
+ this._batchUpdates = batch;
25
28
  }
26
29
  /**
27
30
  * Gets the current local bot state.
@@ -51,10 +54,25 @@ export class BotHelper extends BaseHelper {
51
54
  * Updates the given bot with the given data.
52
55
  * @param bot The bot.
53
56
  * @param newData The new data that the bot should have.
54
- */
57
+ */
55
58
  updateBot(bot, newData) {
56
59
  return __awaiter(this, void 0, void 0, function* () {
57
- yield this.transaction(botUpdated(bot.id, newData));
60
+ if (this._batchUpdates) {
61
+ this._botUpdates.push(botUpdated(bot.id, newData));
62
+ if (!this._batchPending) {
63
+ this._batchPending = true;
64
+ this._batchPromise = new Promise((resolve, reject) => {
65
+ queueMicrotask(() => {
66
+ const updates = this._botUpdates;
67
+ this._botUpdates = [];
68
+ this._batchPending = false;
69
+ this.transaction(...updates).then(resolve, reject);
70
+ });
71
+ });
72
+ }
73
+ return this._batchPromise;
74
+ }
75
+ return this.transaction(botUpdated(bot.id, newData));
58
76
  });
59
77
  }
60
78
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BotHelper.js","sourceRoot":"","sources":["BotHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BotHelper.js","sourceRoot":"","sources":["BotHelper.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@casual-simulation/aux-vm",
3
- "version": "3.0.1",
3
+ "version": "3.0.2",
4
4
  "description": "A set of abstractions required to securely run an AUX.",
5
5
  "keywords": [
6
6
  "aux"
@@ -40,12 +40,13 @@
40
40
  "url": "https://github.com/casual-simulation/casualos/issues"
41
41
  },
42
42
  "dependencies": {
43
- "@casual-simulation/aux-common": "^3.0.1",
43
+ "@casual-simulation/aux-common": "^3.0.2",
44
44
  "@casual-simulation/aux-records": "^3.0.0",
45
- "@casual-simulation/causal-trees": "^3.0.0",
45
+ "@casual-simulation/causal-trees": "^3.0.2",
46
46
  "@casual-simulation/crypto": "^3.0.0",
47
47
  "@casual-simulation/fast-json-stable-stringify": "^3.0.0",
48
- "@casual-simulation/undom": "^3.0.0",
48
+ "@casual-simulation/timesync": "^3.0.2",
49
+ "@casual-simulation/undom": "^3.0.2",
49
50
  "esbuild": "^0.13.8",
50
51
  "esbuild-wasm": "^0.8.43",
51
52
  "lodash": "4.17.21",
@@ -53,5 +54,5 @@
53
54
  "rxjs": "^6.5.2",
54
55
  "uuid": "^8.3.2"
55
56
  },
56
- "gitHead": "f1533c0d113649406a8bfa9b298fe99acfe7499f"
57
+ "gitHead": "9279acf4466028afeea70ee650edb78243fec8a0"
57
58
  }
package/vm/AuxConfig.d.ts CHANGED
@@ -55,7 +55,22 @@ export interface AuxConfigParameters {
55
55
  * before the sync event is triggered.
56
56
  */
57
57
  builtinPortals?: string[];
58
+ /**
59
+ * The configuration needed to perform timesync for the simulation.
60
+ */
61
+ timesync?: AuxTimeSyncConfiguration;
62
+ }
63
+ export interface AuxTimeSyncConfiguration {
64
+ /**
65
+ * The host that timesync requests should be made to.
66
+ */
67
+ host?: string;
68
+ /**
69
+ * The protocol that should be used for time sync requests.
70
+ */
71
+ connectionProtocol?: TimeSyncProtocol;
58
72
  }
73
+ export declare type TimeSyncProtocol = RemoteCausalRepoProtocol;
59
74
  export declare function buildVersionNumber(config: AuxConfigParameters): {
60
75
  version: string;
61
76
  major: number;
@@ -1 +1 @@
1
- {"version":3,"file":"AuxConfig.js","sourceRoot":"","sources":["AuxConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,QAAQ,GAGX,MAAM,+BAA+B,CAAC;AAuEvC,MAAM,UAAU,kBAAkB,CAAC,MAA2B;IAC1D,IAAI,CAAC,MAAM,EAAE;QACT,OAAO,IAAI,CAAC;KACf;IACD,uBACI,IAAI,EAAE,MAAM,CAAC,WAAW,IACrB,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,EACvC;AACN,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAC9C,IAAI,CAAC,OAAO,EAAE;QACV,OAAO;YACH,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;SACd,CAAC;KACL;IACD,MAAM,YAAY,GAAG,2CAA2C,CAAC;IACjE,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE1E,IAAI,KAAK,GAAqB,KAAK,CAAC;IACpC,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;QACtB,KAAK,GAAG,IAAI,CAAC;QACb,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;YAClB,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;SAC5B;KACJ;IAED,OAAO;QACH,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK;KACR,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"AuxConfig.js","sourceRoot":"","sources":["AuxConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,QAAQ,GAGX,MAAM,+BAA+B,CAAC;AA0FvC,MAAM,UAAU,kBAAkB,CAAC,MAA2B;IAC1D,IAAI,CAAC,MAAM,EAAE;QACT,OAAO,IAAI,CAAC;KACf;IACD,uBACI,IAAI,EAAE,MAAM,CAAC,WAAW,IACrB,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,EACvC;AACN,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAC9C,IAAI,CAAC,OAAO,EAAE;QACV,OAAO;YACH,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;SACd,CAAC;KACL;IACD,MAAM,YAAY,GAAG,2CAA2C,CAAC;IACjE,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE1E,IAAI,KAAK,GAAqB,KAAK,CAAC;IACpC,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;QACtB,KAAK,GAAG,IAAI,CAAC;QACb,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;YAClB,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;SAC5B;KACJ;IAED,OAAO;QACH,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK;KACR,CAAC;AACN,CAAC"}
@@ -8,6 +8,7 @@ import { StatusUpdate, DeviceAction, DeviceInfo, Action, RemoteActions } from '@
8
8
  import { AuxChannelErrorType } from './AuxChannelErrorTypes';
9
9
  import { StoredAux } from '../StoredAux';
10
10
  import { CustomAppHelper } from '../portals/CustomAppHelper';
11
+ import { TimeSyncController } from '@casual-simulation/timesync';
11
12
  export interface AuxChannelOptions {
12
13
  }
13
14
  export declare abstract class BaseAuxChannel implements AuxChannel, SubscriptionLike {
@@ -25,6 +26,7 @@ export declare abstract class BaseAuxChannel implements AuxChannel, Subscription
25
26
  private _eventBuffer;
26
27
  private _hasInitialState;
27
28
  private _version;
29
+ private _timeSync;
28
30
  private _user;
29
31
  private _onLocalEvents;
30
32
  private _onDeviceEvents;
@@ -39,6 +41,7 @@ export declare abstract class BaseAuxChannel implements AuxChannel, Subscription
39
41
  get onConnectionStateChanged(): Subject<StatusUpdate>;
40
42
  get onError(): Subject<AuxChannelErrorType>;
41
43
  get helper(): AuxHelper;
44
+ get timesync(): TimeSyncController;
42
45
  protected get user(): AuxUser;
43
46
  constructor(user: AuxUser, config: AuxConfig, options: AuxChannelOptions);
44
47
  init(onLocalEvents?: (events: LocalActions[]) => void, onDeviceEvents?: (events: DeviceAction[]) => void, onStateUpdated?: (state: StateUpdatedEvent) => void, onVersionUpdated?: (version: RuntimeStateVersion) => void, onConnectionStateChanged?: (state: StatusUpdate) => void, onError?: (err: AuxChannelErrorType) => void): Promise<void>;
@@ -69,6 +72,7 @@ export declare abstract class BaseAuxChannel implements AuxChannel, Subscription
69
72
  */
70
73
  protected _sendRemoteEvents(events: RemoteActions[]): Promise<void>;
71
74
  protected _createAuxHelper(): AuxHelper;
75
+ protected _createTimeSyncController(): TimeSyncController;
72
76
  protected _registerSubscriptions(): void;
73
77
  protected _registerStateSubscriptionsForPartition(partition: AuxPartition): void;
74
78
  protected _ensureSetup(): Promise<void>;
@@ -83,6 +83,9 @@ export class BaseAuxChannel {
83
83
  get helper() {
84
84
  return this._helper;
85
85
  }
86
+ get timesync() {
87
+ return this._timeSync;
88
+ }
86
89
  get user() {
87
90
  return this._user;
88
91
  }
@@ -295,6 +298,9 @@ export class BaseAuxChannel {
295
298
  helper.userId = this.user ? this.user.id : null;
296
299
  return helper;
297
300
  }
301
+ _createTimeSyncController() {
302
+ return null;
303
+ }
298
304
  _registerSubscriptions() {
299
305
  this._subs.push(this._helper.localEvents.subscribe((e) => this._handleLocalEvents(e), (e) => console.error(e)), this._helper.deviceEvents.subscribe((e) => this._handleDeviceEvents(e), (e) => console.error(e)), this._helper.remoteEvents.subscribe((e) => {
300
306
  this._sendRemoteEvents(e);
@@ -302,6 +308,16 @@ export class BaseAuxChannel {
302
308
  for (let [, partition] of iteratePartitions(this._partitions)) {
303
309
  this._registerStateSubscriptionsForPartition(partition);
304
310
  }
311
+ if (this._timeSync) {
312
+ this._subs.push(this._timeSync, this._timeSync.syncUpdated.subscribe(() => {
313
+ this._runtime.context.instLatency =
314
+ this._timeSync.sync.calculatedTimeLatencyMS;
315
+ this._runtime.context.instTimeOffset =
316
+ this._timeSync.sync.offsetMS;
317
+ this._runtime.context.instTimeOffsetSpread = this._timeSync.sync.offsetSpreadMS;
318
+ }));
319
+ this._timeSync.init();
320
+ }
305
321
  }
306
322
  _registerStateSubscriptionsForPartition(partition) {
307
323
  this._subs.push(partition.onStateUpdated
@@ -334,6 +350,9 @@ export class BaseAuxChannel {
334
350
  if (!this._portalHelper) {
335
351
  this._portalHelper = new CustomAppHelper(this._helper);
336
352
  }
353
+ if (!this._timeSync) {
354
+ this._timeSync = this._createTimeSyncController();
355
+ }
337
356
  this._handleStatusUpdated({
338
357
  type: 'progress',
339
358
  message: 'Initializing user bot...',
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAuxChannel.js","sourceRoot":"","sources":["BaseAuxChannel.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,OAAO,EAAoB,MAAM,MAAM,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGvD,OAAO,EAIH,aAAa,EAKb,iBAAiB,EACjB,UAAU,EAGV,oCAAoC,EAEpC,QAAQ,EACR,WAAW,EACX,WAAW,EAEX,iBAAiB,EACjB,qBAAqB,EACrB,eAAe,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAa,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAEH,oBAAoB,GAOvB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAIlC,MAAM,OAAgB,cAAc;IAwDhC,YAAY,IAAa,EAAE,MAAiB,EAAE,OAA0B;QACpE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAAkB,CAAC;QACpD,IAAI,CAAC,eAAe,GAAG,IAAI,OAAO,EAAkB,CAAC;QACrD,IAAI,CAAC,eAAe,GAAG,IAAI,OAAO,EAAqB,CAAC;QACxD,IAAI,CAAC,iBAAiB,GAAG,IAAI,OAAO,EAAuB,CAAC;QAC5D,IAAI,CAAC,yBAAyB,GAAG,IAAI,OAAO,EAAgB,CAAC;QAC7D,IAAI,CAAC,QAAQ,GAAG,IAAI,OAAO,EAAuB,CAAC;QACnD,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG;YACZ,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,EAAE;SACb,CAAC;QAEF,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;YACnD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE;aAC1B,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;YACzC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE;aAC1B,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;YACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE;aAC1B,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;YACzC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE;aAC1B,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,WAAW,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IA7ED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED,IAAI,wBAAwB;QACxB,OAAO,IAAI,CAAC,yBAAyB,CAAC;IAC1C,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAc,IAAI;QACd,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAiDK,IAAI,CACN,aAAgD,EAChD,cAAiD,EACjD,cAAmD,EACnD,gBAAyD,EACzD,wBAAwD,EACxD,OAA4C;;YAE5C,IAAI,aAAa,EAAE;gBACf,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;aACzD;YACD,IAAI,cAAc,EAAE;gBAChB,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3D;YACD,IAAI,gBAAgB,EAAE;gBAClB,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;aAC/D;YACD,IAAI,wBAAwB,EAAE;gBAC1B,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1C,wBAAwB,CAAC,CAAC,CAAC,CAC9B,CAAC;aACL;YACD,IAAI,cAAc,EAAE;gBAChB,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3D;YACD,iBAAiB;YACjB,uCAAuC;YACvC,IAAI;YAEJ,OAAO,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;KAAA;IAEK,WAAW,CACb,aAAgD,EAChD,cAAiD,EACjD,cAAmD,EACnD,gBAAyD,EACzD,wBAAwD,EACxD,OAA4C;;YAE5C,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB;iBACxC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;iBACrC,SAAS,EAAE,CAAC;YACjB,MAAM,IAAI,CAAC,IAAI,CACX,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,OAAO,CACV,CAAC;YACF,MAAM,OAAO,CAAC;QAClB,CAAC;KAAA;IAEK,iBAAiB,CACnB,aAAgD,EAChD,cAAiD,EACjD,cAAmD,EACnD,gBAAyD,EACzD,wBAAwD,EACxD,OAA4C;;YAE5C,IAAI,aAAa,EAAE;gBACf,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;aACzD;YACD,IAAI,cAAc,EAAE;gBAChB,IAAI,CAAC,cAAc;qBACd,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;qBAC1D,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;aAC5C;YACD,IAAI,gBAAgB,EAAE;gBAClB,IAAI,CAAC,gBAAgB;qBAChB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBAC9B,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;aAC9C;YACD,IAAI,wBAAwB,EAAE;gBAC1B,IAAI,CAAC,wBAAwB;qBACxB,IAAI,CACD,SAAS,CACL;oBACI,IAAI,EAAE,MAAM;iBACC,EACjB,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAkB,CACjD,CACJ;qBACA,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;aACtD;YACD,IAAI,cAAc,EAAE;gBAChB,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3D;QACL,CAAC;KAAA;IAEa,KAAK;;YACf,IAAI,CAAC,oBAAoB,CAAC;gBACtB,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,yBAAyB;gBAClC,QAAQ,EAAE,GAAG;aAChB,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,GAAQ,EAAE,CAAC;YAC3B,IAAI,CAAC,0BAA0B;gBAC3B,IAAI,oCAAoC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/D,IAAI,UAAU,GAAmB,EAAE,CAAC;YACpC,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;gBACrC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;oBAC9C,SAAS;iBACZ;gBACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CACzC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAC/B,CAAC;gBACF,IAAI,SAAS,EAAE;oBACX,SAAS,CAAC,KAAK,GAAG,GAAG,CAAC;oBACtB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;oBAClC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBAC9B;qBAAM;oBACH,MAAM,IAAI,KAAK,CACX,+CAA+C,GAAG,EAAE,CACvD,CAAC;iBACL;aACJ;YAED,IAAI,CAAC,aAAa,GAAG,IAAI,YAAY,CACjC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAC3C,CAAC;YACF,IAAI,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC;YAE3C,IAAI,YAAY,GAAG,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,IAAI,CACX,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,aAAa,CAAC,OAAO;iBACrB,IAAI,CACD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACV,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CACjD,CACJ;iBACA,SAAS,CAAC,IAAI,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAClD,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CACzB,IAAI,CAAC,oCAAoC,CAAC,CAAC,CAAC,CAC/C,CACJ,CAAC;YAEF,IAAI,CAAC,oBAAoB,CAAC;gBACtB,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,6BAA6B;gBACtC,QAAQ,EAAE,GAAG;aAChB,CAAC,CAAC;YACH,KAAK,IAAI,SAAS,IAAI,UAAU,EAAE;gBAC9B,SAAS,CAAC,OAAO,EAAE,CAAC;aACvB;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAES,oCAAoC,CAC1C,SAAuB;QAEvB,OAAO;YACH,SAAS;YACT,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAC5D,SAAS,CAAC,QAAQ;iBACb,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;iBAC1D,SAAS,CAAC,IAAI,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACrD,CAAC;IACN,CAAC;IAUK,OAAO,CAAC,IAAa;;YACvB,KAAK,IAAI,CAAC,EAAE,SAAS,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBAC3D,IAAI,SAAS,CAAC,OAAO,EAAE;oBACnB,MAAM,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iBACjC;aACJ;YAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAElB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;gBAC3B,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;aAC7B;QACL,CAAC;KAAA;IAEK,UAAU,CAAC,MAAmB;;YAChC,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBACvB,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,CAAC;aAC7C;iBAAM;gBACH,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;aACrC;QACL,CAAC;KAAA;IAEK,KAAK,CACP,SAAiB,EACjB,MAAiB,EACjB,GAAS;;YAET,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAChB,MAAM,IAAI,KAAK,CACX,sDAAsD,CACzD,CAAC;aACL;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YAE3D,OAAO;gBACH,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;aAC7C,CAAC;QACN,CAAC;KAAA;IAEK,YAAY,CAAC,QAAkB;;YACjC,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;KAAA;IAEK,OAAO,CAAC,KAAa;8DAAiB,CAAC;KAAA;IAEvC,QAAQ,CAAC,KAAa;;YACxB,KAAK,IAAI,CAAC,EAAE,SAAS,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBAC3D,IAAI,SAAS,CAAC,QAAQ,EAAE;oBACpB,MAAM,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;iBACnC;aACJ;QACL,CAAC;KAAA;IAEK,UAAU,CAAC,MAAgB;;YAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC;KAAA;IAED;;OAEG;IACG,MAAM;;YACR,IAAI,KAAK,GAAc,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;YAE3C,KAAK,IAAI,GAAG,IAAI,KAAK,EAAE;gBACnB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBACvB,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;aACvD;YAED,OAAO;gBACH,OAAO,EAAE,CAAC;gBACV,KAAK,EAAE,KAAK;aACf,CAAC;QACN,CAAC;KAAA;IAEK,OAAO;;YACT,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAClC,CAAC;KAAA;IAED;;;OAGG;IACa,iBAAiB,CAAC,MAAuB;;YACrD,KAAK,IAAI,CAAC,EAAE,SAAS,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBAC3D,IAAI,SAAS,CAAC,gBAAgB,EAAE;oBAC5B,MAAM,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;iBAC5C;aACJ;QACL,CAAC;KAAA;IAES,gBAAgB;QACtB,MAAM,UAAU,GAAQ,IAAI,CAAC,WAAW,CAAC;QACzC,IAAI,MAAM,GAAG,IAAI,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAChD,OAAO,MAAM,CAAC;IAClB,CAAC;IAES,sBAAsB;QAC5B,IAAI,CAAC,KAAK,CAAC,IAAI,CACX,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAC9B,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EACjC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAC/B,EACD,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAClC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAC/B,EACD,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;YACtC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CACL,CAAC;QACF,KAAK,IAAI,CAAC,EAAE,SAAS,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAC3D,IAAI,CAAC,uCAAuC,CAAC,SAAS,CAAC,CAAC;SAC3D;IACL,CAAC;IAES,uCAAuC,CAAC,SAAuB;QACrE,IAAI,CAAC,KAAK,CAAC,IAAI,CACX,SAAS,CAAC,cAAc;aACnB,IAAI,CACD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACN,IACI,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC;gBACvB,CAAC,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC;gBACzB,CAAC,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,EAC3B;gBACE,OAAO;aACV;YACD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC,CACL;aACA,SAAS,CAAC,IAAI,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAClD,SAAS,CAAC,gBAAgB;aACrB,IAAI,CACD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACN,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC,CAAC,CACL;aACA,SAAS,CAAC,IAAI,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACrD,CAAC;IACN,CAAC;IAEe,YAAY;;YACxB,iEAAiE;YACjE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAChB,IAAI,CAAC,WAAW,CAAC;gBACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAClC;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACf,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;aAC1C;YACD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;gBACrB,IAAI,CAAC,aAAa,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC1D;YAED,IAAI,CAAC,oBAAoB,CAAC;gBACtB,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,0BAA0B;gBACnC,QAAQ,EAAE,GAAG;aAChB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAE1B,IAAI,CAAC,oBAAoB,CAAC;gBACtB,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,wBAAwB;gBACjC,QAAQ,EAAE,GAAG;aAChB,CAAC,CAAC;YAEH,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;gBAC1B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAC/B,IAAI,CAAC,sBAAsB,EAAE,CAAC;aACjC;YAED,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YAE7B,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAE9B,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE;gBAC7B,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC;oBAChC,IAAI,EAAE,eAAe;oBACrB,UAAU,EAAE,KAAK;oBACjB,MAAM,EAAE,cAAc;iBACzB,CAAC,CAAC;gBACH,OAAO;aACV;YAED,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;YACnD,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC;gBAChC,IAAI,EAAE,MAAM;aACf,CAAC,CAAC;QACP,CAAC;KAAA;IAEe,oBAAoB,CAAC,KAAmB;;YACpD,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE;gBACjC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;aACjC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,EAAE;gBAC9C,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;aAC7B;YAED,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC;KAAA;IAED;;;;;OAKG;IACa,sBAAsB,CAAC,MAAgB;;YACnD,MAAM,OAAO,GAAgB,MAAM,CAAC;YACpC,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;KAAA;IAES,mBAAmB,CAAC,KAAwB;QAClD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YACxB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9B,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE;oBACrD,OAAO,CAAC,GAAG,CACP,uDAAuD,CAC1D,CAAC;iBACL;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;gBACjC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;gBACvB,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,CAAC;aACvC;SACJ;IACL,CAAC;IAES,YAAY,CAAC,KAAU;QAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAES,cAAc;QACpB,MAAM,OAAO,GAAG,IAAI,UAAU,CAC1B,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EACvC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EACvD,SAAS,EACT,IAAI,CAAC,0BAA0B,EAC/B,IAAI,CAAC,OAAO,CAAC,MAAM;YACf,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,IAAI,KAAK;YACjD,CAAC,CAAC,KAAK,CACd,CAAC;QACF,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,OAAO,OAAO,CAAC;IACnB,CAAC;IAES,kBAAkB,CAAC,CAAiB;QAC1C,KAAK,IAAI,KAAK,IAAI,CAAC,EAAE;YACjB,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;gBAC7B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;aACzD;SACJ;QACD,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEnC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAO,CAAE,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7C,CAAC;IAES,mBAAmB,CAAC,CAAiB;QAC3C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IAEe,cAAc,CAC1B,KAAa,EACb,MAAuB,EACvB,KAAsB;;YAEtB,IAAI,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE;gBAC3B,OAAO,CAAC,GAAG,CACP,+CAA+C,KAAK,uCAAuC,CAC9F,CAAC;gBACF,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;oBACxB,IAAI,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;iBACtD;gBACD,OAAO;aACV;YAED,IAAI,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACpD,IAAI,CAAC,SAAS,EAAE;gBACZ,OAAO;aACV;YAED,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,CACX,GAAG,IAAI,CAAC,oCAAoC,CAAC,SAAS,CAAC,CAC1D,CAAC;YAEF,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;gBACxB,8BAA8B;gBAC9B,SAAS,CAAC,eAAe;qBACpB,IAAI,CACD,KAAK,CACD,CAAC,MAAM,EAAE,EAAE,CACP,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,CACvD,CACJ;qBACA,SAAS,CAAC,GAAG,EAAE;oBACZ,IAAI,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;aACV;YAED,SAAS,CAAC,OAAO,EAAE,CAAC;YAEpB,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBACzB,IAAI,CAAC,uCAAuC,CAAC,SAAS,CAAC,CAAC;aAC3D;QACL,CAAC;KAAA;IAEa,YAAY;;YACtB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBACZ,OAAO,CAAC,IAAI,CACR,+FAA+F,CAClG,CAAC;gBACF,OAAO;aACV;YACD,IAAI;gBACA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;gBACrC,MAAM,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;aAChE;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC,CAAC;aACnE;QACL,CAAC;KAAA;IAEa,eAAe;;;YACzB,IAAI;gBACA,IACI,CAAA,MAAA,IAAI,CAAC,OAAO,CAAC,MAAM,0CAAE,cAAc;oBACnC,CAAA,MAAA,IAAI,CAAC,OAAO,CAAC,MAAM,0CAAE,cAAc,CAAC,MAAM,IAAG,CAAC,EAChD;oBACE,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAC5D,qBAAqB,CAAC,MAAM,CAAC,CAChC,CAAC;oBACF,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;wBAClB,GAAG,OAAO;wBAEV,2DAA2D;wBAC3D,iEAAiE;wBACjE,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;qBAClC,CAAC,CAAC;iBACN;aACJ;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,GAAG,CAAC,CAAC;aACtE;;KACJ;IAEa,gBAAgB;;YAC1B,IACI,CAAC,IAAI,CAAC,OAAO;gBACb,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM;gBACpB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAC9B;gBACE,OAAO;aACV;YACD,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE;gBACtC,IAAI;oBACA,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CACjC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAC9B,CAAC;iBACL;gBAAC,OAAO,GAAG,EAAE;oBACV,OAAO,CAAC,KAAK,CACT,iDAAiD,EACjD,GAAG,CACN,CAAC;iBACL;aACJ;iBAAM;gBACH,IAAI;oBACA,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CACxC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAC9B,CAAC;iBACL;gBAAC,OAAO,GAAG,EAAE;oBACV,OAAO,CAAC,KAAK,CACT,8CAA8C,EAC9C,GAAG,CACN,CAAC;iBACL;aACJ;QACL,CAAC;KAAA;IAED;;OAEG;IACH,mBAAmB;QACf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACvB,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,WAAW;QACP,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,OAAO;SACV;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAC/C,CAAC;CAGJ;AAED,WAAW,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"BaseAuxChannel.js","sourceRoot":"","sources":["BaseAuxChannel.ts"],"names":[],"mappings":"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"}