@casual-simulation/aux-vm-browser 3.0.18-alpha.2734086997 → 3.0.18

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.
@@ -12,6 +12,8 @@ export declare class SystemPortalManager implements SubscriptionLike {
12
12
  private _selectionUpdated;
13
13
  private _recentsUpdated;
14
14
  private _searchUpdated;
15
+ private _diffUpdated;
16
+ private _diffSelectionUpdated;
15
17
  private _buffer;
16
18
  private _recentTags;
17
19
  private _recentTagsListSize;
@@ -25,6 +27,8 @@ export declare class SystemPortalManager implements SubscriptionLike {
25
27
  get onSelectionUpdated(): Observable<SystemPortalSelectionUpdate>;
26
28
  get onRecentsUpdated(): Observable<SystemPortalRecentsUpdate>;
27
29
  get onSearchResultsUpdated(): Observable<SystemPortalSearchUpdate>;
30
+ get onDiffUpdated(): Observable<SystemPortalDiffUpdate>;
31
+ get onDiffSelectionUpdated(): Observable<SystemPortalDiffSelectionUpdate>;
28
32
  /**
29
33
  * Creates a new bot panel manager.
30
34
  * @param watcher The bot watcher to use.
@@ -46,6 +50,10 @@ export declare class SystemPortalManager implements SubscriptionLike {
46
50
  private _findSelection;
47
51
  private _calculateRecentsUpdated;
48
52
  private _updateRecentsList;
53
+ private _calculateDiffUpdated;
54
+ private _findDiff;
55
+ private _calculateDiffSelectionUpdated;
56
+ private _findDiffSelection;
49
57
  private _calculateSearchResults;
50
58
  private _searchResultsUpdate;
51
59
  }
@@ -96,6 +104,7 @@ export interface SystemPortalItem {
96
104
  export interface SystemPortalBot {
97
105
  bot: Bot;
98
106
  title: string;
107
+ system: string;
99
108
  }
100
109
  export declare type SystemPortalSelectionUpdate = SystemPortalHasSelectionUpdate | SystemPortalNoSelectionUpdate;
101
110
  export interface SystemPortalHasSelectionUpdate {
@@ -226,4 +235,57 @@ export interface SystemPortalSearchMatch {
226
235
  */
227
236
  highlightEndIndex: number;
228
237
  }
238
+ export declare type SystemPortalDiffUpdate = SystemPortalDiffEmptyUpdate | SystemPortalDiffItemsUpdate;
239
+ export interface SystemPortalDiffEmptyUpdate {
240
+ hasPortal: false;
241
+ }
242
+ export interface SystemPortalDiffItemsUpdate {
243
+ hasPortal: true;
244
+ selectedKey: string;
245
+ items: SystemPortalDiffArea[];
246
+ }
247
+ export interface SystemPortalDiffArea {
248
+ area: string;
249
+ bots: SystemPortalDiffBot[];
250
+ }
251
+ export declare type SystemPortalDiffBot = SystemPortalDiffAddedBot | SystemPortalDiffRemovedBot | SystemPortalDiffUpdatedBot;
252
+ export interface SystemPortalDiffAddedBot {
253
+ key: string;
254
+ title: string;
255
+ addedBot: Bot;
256
+ }
257
+ export interface SystemPortalDiffRemovedBot {
258
+ key: string;
259
+ title: string;
260
+ removedBot: Bot;
261
+ }
262
+ export interface SystemPortalDiffUpdatedBot {
263
+ key: string;
264
+ title: string;
265
+ originalBot: Bot;
266
+ newBot: Bot;
267
+ changedTags: SystemPortalDiffTag[];
268
+ }
269
+ export interface SystemPortalDiffTag {
270
+ tag: string;
271
+ space?: string;
272
+ }
273
+ export declare type SystemPortalDiffSelectionUpdate = SystemPortalHasDiffSelectionUpdate | SystemPortalNoDiffSelectionUpdate;
274
+ export interface SystemPortalHasDiffSelectionUpdate {
275
+ hasSelection: true;
276
+ originalBot: Bot;
277
+ newBot: Bot;
278
+ tag?: string;
279
+ space?: string;
280
+ tags: SystemPortalDiffSelectionTag[];
281
+ }
282
+ export interface SystemPortalDiffSelectionTag {
283
+ name: string;
284
+ space?: string;
285
+ prefix?: string;
286
+ status: 'added' | 'removed' | 'changed' | 'none';
287
+ }
288
+ export interface SystemPortalNoDiffSelectionUpdate {
289
+ hasSelection: false;
290
+ }
229
291
  //# sourceMappingURL=SystemPortalManager.d.ts.map
@@ -7,10 +7,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import { calculateStringTagValue, getBotTag, hasValue, SYSTEM_PORTAL, SYSTEM_PORTAL_BOT, SYSTEM_TAG, getTagMask, calculateBooleanTagValue, EDITING_BOT, EDITING_TAG, getShortId, isScript, EDITING_TAG_SPACE, getTagValueForSpace, parseNewTag, DNA_TAG_PREFIX, isFormula, SYSTEM_PORTAL_TAG, SYSTEM_PORTAL_TAG_SPACE, isBotLink, calculateBotIdTagValue, SYSTEM_PORTAL_SEARCH, parseScript, parseFormula, formatValue, BOT_LINK_TAG_PREFIX, getScriptPrefix, KNOWN_TAG_PREFIXES, SYSTEM_TAG_NAME, calculateFormattedBotValue, } from '@casual-simulation/aux-common';
11
- import { isEqual, sortBy, unionBy } from 'lodash';
10
+ import { calculateStringTagValue, getBotTag, hasValue, SYSTEM_PORTAL, SYSTEM_PORTAL_BOT, SYSTEM_TAG, getTagMask, calculateBooleanTagValue, EDITING_BOT, EDITING_TAG, getShortId, isScript, EDITING_TAG_SPACE, getTagValueForSpace, parseNewTag, DNA_TAG_PREFIX, isFormula, SYSTEM_PORTAL_TAG, SYSTEM_PORTAL_TAG_SPACE, isBotLink, calculateBotIdTagValue, SYSTEM_PORTAL_SEARCH, parseScript, parseFormula, formatValue, BOT_LINK_TAG_PREFIX, getScriptPrefix, KNOWN_TAG_PREFIXES, SYSTEM_TAG_NAME, calculateFormattedBotValue, SYSTEM_PORTAL_DIFF, SYSTEM_PORTAL_DIFF_BOT, SYSTEM_PORTAL_DIFF_TAG, SYSTEM_PORTAL_DIFF_TAG_SPACE, } from '@casual-simulation/aux-common';
11
+ import { isEqual, sortBy, union, unionBy } from 'lodash';
12
12
  import { BehaviorSubject, combineLatest, merge, Observable, Subscription, } from 'rxjs';
13
- import { bufferTime, distinctUntilChanged, filter, map, skip, startWith, switchMap, } from 'rxjs/operators';
13
+ import { bufferTime, distinctUntilChanged, filter, map, startWith, switchMap, } from 'rxjs/operators';
14
14
  /**
15
15
  * The number of tags that should be processed per time that the search buffer is updated.
16
16
  */
@@ -53,10 +53,24 @@ export class SystemPortalManager {
53
53
  numBots: 0,
54
54
  items: [],
55
55
  });
56
- this._sub.add(this._calculateItemsUpdated().subscribe(this._itemsUpdated));
57
- this._sub.add(this._calculateSelectionUpdated().subscribe(this._selectionUpdated));
56
+ this._diffUpdated = new BehaviorSubject({
57
+ hasPortal: false,
58
+ });
59
+ this._diffSelectionUpdated =
60
+ new BehaviorSubject({
61
+ hasSelection: false,
62
+ });
63
+ const itemsUpdated = this._calculateItemsUpdated();
64
+ const itemsUpdatedDistinct = itemsUpdated.pipe(distinctUntilChanged((x, y) => isEqual(x, y)));
65
+ const selectionUpdated = this._calculateSelectionUpdated(itemsUpdatedDistinct);
66
+ const diffUpdated = this._calculateDiffUpdated(itemsUpdated);
67
+ const diffSelectionUpdated = this._calculateDiffSelectionUpdated(diffUpdated);
68
+ this._sub.add(itemsUpdatedDistinct.subscribe(this._itemsUpdated));
69
+ this._sub.add(selectionUpdated.subscribe(this._selectionUpdated));
58
70
  this._sub.add(this._calculateRecentsUpdated().subscribe(this._recentsUpdated));
59
71
  this._sub.add(this._calculateSearchResults().subscribe(this._searchUpdated));
72
+ this._sub.add(diffUpdated.subscribe(this._diffUpdated));
73
+ this._sub.add(diffSelectionUpdated.subscribe(this._diffSelectionUpdated));
60
74
  }
61
75
  get tagSortMode() {
62
76
  return this._tagSortMode;
@@ -86,6 +100,12 @@ export class SystemPortalManager {
86
100
  get onSearchResultsUpdated() {
87
101
  return this._searchUpdated;
88
102
  }
103
+ get onDiffUpdated() {
104
+ return this._diffUpdated;
105
+ }
106
+ get onDiffSelectionUpdated() {
107
+ return this._diffSelectionUpdated;
108
+ }
89
109
  /**
90
110
  * Adds the given tag as a pinned tag.
91
111
  * Pinned tags are a separate list of tags that are persisted across multiple selections.
@@ -133,7 +153,7 @@ export class SystemPortalManager {
133
153
  const bufferedEvents = this._buffer
134
154
  ? allBotsSelectedUpdatedAddedAndRemoved.pipe(bufferTime(10))
135
155
  : allBotsSelectedUpdatedAddedAndRemoved;
136
- return bufferedEvents.pipe(map(() => this._findMatchingItems()), distinctUntilChanged((x, y) => isEqual(x, y)));
156
+ return bufferedEvents.pipe(map(() => this._findMatchingItems()));
137
157
  }
138
158
  _findMatchingItems() {
139
159
  if (!this._helper.userBot) {
@@ -170,6 +190,7 @@ export class SystemPortalManager {
170
190
  item.bots.push({
171
191
  bot,
172
192
  title,
193
+ system,
173
194
  });
174
195
  }
175
196
  }
@@ -187,9 +208,9 @@ export class SystemPortalManager {
187
208
  hasPortal: false,
188
209
  };
189
210
  }
190
- _calculateSelectionUpdated() {
211
+ _calculateSelectionUpdated(itemsUpdated) {
191
212
  return combineLatest([
192
- this._itemsUpdated.pipe(skip(1)),
213
+ itemsUpdated,
193
214
  this._watcher.botTagsChanged(this._helper.userId).pipe(filter((change) => change.tags.has(SYSTEM_PORTAL_TAG) ||
194
215
  change.tags.has(SYSTEM_PORTAL_TAG_SPACE)), startWith(1)),
195
216
  ]).pipe(map(([update, _]) => update), map((update) => this._findSelection(update)), distinctUntilChanged((first, second) => isEqual(first, second)));
@@ -356,6 +377,183 @@ export class SystemPortalManager {
356
377
  return Object.assign({ hint: '' }, ret);
357
378
  }
358
379
  }
380
+ _calculateDiffUpdated(itemsUpdated) {
381
+ return combineLatest([
382
+ itemsUpdated,
383
+ this._watcher.botTagsChanged(this._helper.userId).pipe(filter((change) => change.tags.has(SYSTEM_PORTAL_DIFF) ||
384
+ change.tags.has(SYSTEM_PORTAL_DIFF_BOT)), startWith(1)),
385
+ ]).pipe(map(([update, _]) => update), map((update) => this._findDiff(update)), distinctUntilChanged((first, second) => isEqual(first, second)));
386
+ }
387
+ _findDiff(update) {
388
+ if (!update.hasPortal) {
389
+ return {
390
+ hasPortal: false,
391
+ };
392
+ }
393
+ if (!this._helper.userBot) {
394
+ return {
395
+ hasPortal: false,
396
+ };
397
+ }
398
+ const diffTag = calculateStringTagValue(null, this._helper.userBot, SYSTEM_PORTAL_DIFF, null);
399
+ const systemPortal = calculateStringTagValue(null, this._helper.userBot, SYSTEM_PORTAL, null);
400
+ const systemTag = calculateStringTagValue(null, this._helper.userBot, SYSTEM_TAG_NAME, SYSTEM_TAG);
401
+ const showAllSystemBots = calculateBooleanTagValue(null, this._helper.userBot, SYSTEM_PORTAL, false);
402
+ if (!hasValue(diffTag)) {
403
+ return {
404
+ hasPortal: false,
405
+ };
406
+ }
407
+ let selectedKey = calculateBotIdTagValue(this._helper.userBot, SYSTEM_PORTAL_DIFF_BOT, null);
408
+ let areas = [];
409
+ let areasMap = new Map();
410
+ let systems = new Map();
411
+ for (let bot of this._helper.objects) {
412
+ const system = calculateFormattedBotValue(null, bot, diffTag);
413
+ if (hasValue(system)) {
414
+ let list = systems.get(system);
415
+ if (!list) {
416
+ list = [bot];
417
+ systems.set(system, list);
418
+ }
419
+ else {
420
+ list.push(bot);
421
+ }
422
+ }
423
+ }
424
+ for (let area of update.items) {
425
+ let items = [];
426
+ for (let item of area.bots) {
427
+ if (systems.has(item.system)) {
428
+ const bots = systems.get(item.system);
429
+ const [bot] = bots.splice(0, 1);
430
+ if (bots.length <= 0) {
431
+ systems.delete(item.system);
432
+ }
433
+ const originalBot = item.bot;
434
+ const newBot = bot;
435
+ const changedTags = sortBy(findChangedTags(originalBot, newBot).filter((t) => t.name !== diffTag && t.name !== systemTag), (t) => t.name);
436
+ items.push({
437
+ key: item.bot.id,
438
+ title: item.title,
439
+ originalBot: item.bot,
440
+ newBot: bot,
441
+ changedTags: changedTags
442
+ .filter((t) => t.status !== 'none')
443
+ .map((t) => ({
444
+ tag: t.name,
445
+ space: t.space,
446
+ })),
447
+ });
448
+ }
449
+ else {
450
+ // bot was removed
451
+ items.push({
452
+ key: item.bot.id,
453
+ title: item.title,
454
+ removedBot: item.bot,
455
+ });
456
+ }
457
+ }
458
+ if (items.length > 0) {
459
+ let diffArea = {
460
+ area: area.area,
461
+ bots: items,
462
+ };
463
+ areas.push(diffArea);
464
+ areasMap.set(area.area, diffArea);
465
+ }
466
+ }
467
+ for (let [system, bots] of systems) {
468
+ if (!showAllSystemBots && !system.includes(systemPortal)) {
469
+ continue;
470
+ }
471
+ // added bots
472
+ const area = getSystemArea(system);
473
+ const title = getBotTitle(system, area);
474
+ let diffArea = areasMap.get(area);
475
+ if (!diffArea) {
476
+ diffArea = {
477
+ area: area,
478
+ bots: [],
479
+ };
480
+ areasMap.set(area, diffArea);
481
+ areas.push(diffArea);
482
+ }
483
+ for (let bot of bots) {
484
+ diffArea.bots.push({
485
+ key: bot.id,
486
+ title: title,
487
+ addedBot: bot,
488
+ });
489
+ }
490
+ }
491
+ for (let item of areas) {
492
+ item.bots = sortBy(item.bots, (b) => b.title);
493
+ }
494
+ return {
495
+ hasPortal: true,
496
+ selectedKey: selectedKey,
497
+ items: sortBy(areas, (a) => a.area),
498
+ };
499
+ }
500
+ _calculateDiffSelectionUpdated(diffUpdated) {
501
+ return combineLatest([
502
+ diffUpdated,
503
+ this._watcher.botTagsChanged(this._helper.userId).pipe(filter((change) => change.tags.has(SYSTEM_PORTAL_DIFF_BOT) ||
504
+ change.tags.has(SYSTEM_PORTAL_DIFF_TAG) ||
505
+ change.tags.has(SYSTEM_PORTAL_DIFF_TAG_SPACE)
506
+ // change.tags.has(SYSTEM_PORTAL_TAG_SPACE)
507
+ ), startWith(1)),
508
+ ]).pipe(map(([update, _]) => update), map((update) => this._findDiffSelection(update)), distinctUntilChanged((first, second) => isEqual(first, second)));
509
+ }
510
+ _findDiffSelection(update) {
511
+ if (!update.hasPortal || !update.selectedKey) {
512
+ return {
513
+ hasSelection: false,
514
+ };
515
+ }
516
+ let bot;
517
+ for (let i of update.items) {
518
+ if (bot) {
519
+ break;
520
+ }
521
+ for (let b of i.bots) {
522
+ if (b.key === update.selectedKey) {
523
+ bot = b;
524
+ break;
525
+ }
526
+ }
527
+ }
528
+ if (!bot) {
529
+ return {
530
+ hasSelection: false,
531
+ };
532
+ }
533
+ const diffTag = calculateStringTagValue(null, this._helper.userBot, SYSTEM_PORTAL_DIFF, null);
534
+ const systemTag = calculateStringTagValue(null, this._helper.userBot, SYSTEM_TAG_NAME, SYSTEM_TAG);
535
+ const selectedTag = calculateStringTagValue(null, this._helper.userBot, SYSTEM_PORTAL_DIFF_TAG, null);
536
+ const selectedSpace = calculateStringTagValue(null, this._helper.userBot, SYSTEM_PORTAL_DIFF_TAG_SPACE, null);
537
+ const newBot = 'addedBot' in bot
538
+ ? bot.addedBot
539
+ : 'removedBot' in bot
540
+ ? null
541
+ : bot.newBot;
542
+ const oldBot = 'addedBot' in bot
543
+ ? null
544
+ : 'removedBot' in bot
545
+ ? bot.removedBot
546
+ : bot.originalBot;
547
+ const changedTags = findChangedTags(oldBot, newBot).filter((t) => t.name !== diffTag && t.name !== systemTag);
548
+ return {
549
+ hasSelection: true,
550
+ newBot,
551
+ originalBot: oldBot,
552
+ tag: selectedTag,
553
+ space: selectedSpace,
554
+ tags: sortBy(changedTags, (t) => `${t.name}.${t.space}`),
555
+ };
556
+ }
359
557
  _calculateSearchResults() {
360
558
  const changes = this._watcher.botTagsChanged(this._helper.userId);
361
559
  return changes.pipe(filter((c) => c.tags.has(SYSTEM_PORTAL_SEARCH) ||
@@ -417,6 +615,22 @@ export class SystemPortalManager {
417
615
  const area = getSystemArea(system);
418
616
  const title = getBotTitle(system, area);
419
617
  let tags = [];
618
+ if (bot.id === query) {
619
+ const result = searchTag('id', null, bot.id, query);
620
+ if (result) {
621
+ tags.push(result);
622
+ matchCount += result.matches.length;
623
+ tagCounter += 1;
624
+ }
625
+ }
626
+ if (bot.space === query) {
627
+ const result = searchTag('space', null, bot.space, query);
628
+ if (result) {
629
+ tags.push(result);
630
+ matchCount += result.matches.length;
631
+ tagCounter += 1;
632
+ }
633
+ }
420
634
  for (let tag in bot.tags) {
421
635
  let value = bot.tags[tag];
422
636
  const result = searchTag(tag, null, value, query);
@@ -611,6 +825,46 @@ export function searchValue(value, indexOffset, query) {
611
825
  }
612
826
  return results;
613
827
  }
828
+ function findChangedTags(originalBot, newBot) {
829
+ var _a, _b, _c, _d, _e, _f, _g, _h;
830
+ let changes = diffTags((_a = originalBot === null || originalBot === void 0 ? void 0 : originalBot.tags) !== null && _a !== void 0 ? _a : {}, (_b = newBot === null || newBot === void 0 ? void 0 : newBot.tags) !== null && _b !== void 0 ? _b : {}, undefined);
831
+ const allSpaces = union(Object.keys((_c = originalBot === null || originalBot === void 0 ? void 0 : originalBot.masks) !== null && _c !== void 0 ? _c : {}), Object.keys((_d = newBot === null || newBot === void 0 ? void 0 : newBot.masks) !== null && _d !== void 0 ? _d : {}));
832
+ for (let space of allSpaces) {
833
+ changes.push(...diffTags((_f = (_e = originalBot === null || originalBot === void 0 ? void 0 : originalBot.masks) === null || _e === void 0 ? void 0 : _e[space]) !== null && _f !== void 0 ? _f : {}, (_h = (_g = newBot === null || newBot === void 0 ? void 0 : newBot.masks) === null || _g === void 0 ? void 0 : _g[space]) !== null && _h !== void 0 ? _h : {}, space));
834
+ }
835
+ return changes;
836
+ }
837
+ function diffTags(firstTags, secondTags, space) {
838
+ let changes = [];
839
+ let hasTagsDiff = false;
840
+ const allTags = union(Object.keys(firstTags), Object.keys(secondTags));
841
+ for (let tag of allTags) {
842
+ const firstValue = firstTags[tag];
843
+ const secondValue = secondTags[tag];
844
+ if (!isEqual(firstValue, secondValue)) {
845
+ const status = hasValue(secondValue) && !hasValue(firstValue)
846
+ ? 'added'
847
+ : hasValue(firstValue) && !hasValue(secondValue)
848
+ ? 'removed'
849
+ : 'changed';
850
+ // updated, deleted, or added
851
+ hasTagsDiff = true;
852
+ changes.push({
853
+ name: tag,
854
+ space,
855
+ status: status,
856
+ });
857
+ }
858
+ else {
859
+ changes.push({
860
+ name: tag,
861
+ space,
862
+ status: 'none',
863
+ });
864
+ }
865
+ }
866
+ return changes;
867
+ }
614
868
  function sleep(ms) {
615
869
  return new Promise((resolve, reject) => setTimeout(resolve, ms));
616
870
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SystemPortalManager.js","sourceRoot":"","sources":["SystemPortalManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SystemPortalManager.js","sourceRoot":"","sources":["SystemPortalManager.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAGH,uBAAuB,EACvB,SAAS,EACT,QAAQ,EACR,aAAa,EACb,iBAAiB,EACjB,UAAU,EAEV,UAAU,EACV,wBAAwB,EACxB,WAAW,EACX,WAAW,EACX,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EAEX,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,uBAAuB,EACvB,SAAS,EACT,sBAAsB,EAEtB,oBAAoB,EAEpB,WAAW,EACX,YAAY,EAEZ,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,0BAA0B,EAC1B,kBAAkB,EAClB,sBAAsB,EAEtB,sBAAsB,EACtB,4BAA4B,GAC/B,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EAAW,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,EACH,eAAe,EACf,aAAa,EACb,KAAK,EACL,UAAU,EAEV,YAAY,GAEf,MAAM,MAAM,CAAC;AACd,OAAO,EACH,UAAU,EACV,oBAAoB,EACpB,MAAM,EACN,GAAG,EAEH,SAAS,EACT,SAAS,GACZ,MAAM,gBAAgB,CAAC;AAExB;;GAEG;AACH,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAClC;;GAEG;AACH,MAAM,2BAA2B,GAAG,GAAG,CAAC;AAExC;;GAEG;AACH,MAAM,OAAO,mBAAmB;IA4D5B;;;;;OAKG;IACH,YACI,OAAmB,EACnB,MAAiB,EACjB,eAAwB,IAAI;QApExB,SAAI,GAAG,IAAI,YAAY,EAAE,CAAC;QAU1B,gBAAW,GAA4B,EAAE,CAAC;QAC1C,wBAAmB,GAAW,EAAE,CAAC;QACjC,iBAAY,GAAgB,eAAe,CAAC;QAC5C,eAAU,GAAa,EAAE,CAAC;QAyD9B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,eAAe,CAAqB;YACzD,SAAS,EAAE,KAAK;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB;YAClB,IAAI,eAAe,CAA8B;gBAC7C,YAAY,EAAE,KAAK;aACtB,CAAC,CAAC;QACP,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAA4B;YAClE,UAAU,EAAE,KAAK;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,IAAI,eAAe,CAA2B;YAChE,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;YACV,KAAK,EAAE,EAAE;SACZ,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,GAAG,IAAI,eAAe,CAAyB;YAC5D,SAAS,EAAE,KAAK;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,qBAAqB;YACtB,IAAI,eAAe,CAAkC;gBACjD,YAAY,EAAE,KAAK;aACtB,CAAC,CAAC;QAEP,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACnD,MAAM,oBAAoB,GAAG,YAAY,CAAC,IAAI,CAC1C,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAChD,CAAC;QAEF,MAAM,gBAAgB,GAClB,IAAI,CAAC,0BAA0B,CAAC,oBAAoB,CAAC,CAAC;QAE1D,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAC7D,MAAM,oBAAoB,GACtB,IAAI,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC;QAErD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,CAAC,GAAG,CACT,IAAI,CAAC,wBAAwB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAClE,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,GAAG,CACT,IAAI,CAAC,uBAAuB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAChE,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC,GAAG,CACT,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAC7D,CAAC;IACN,CAAC;IAzGD,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,IAAI,WAAW,CAAC,IAAiB;QAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;YAChD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACvC;IACL,CAAC;IAED,WAAW;QACP,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,IAAI,kBAAkB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,IAAI,sBAAsB;QACtB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,IAAI,sBAAsB;QACtB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACtC,CAAC;IAiED;;;;OAIG;IACH,YAAY,CAAC,GAAW;QACpB,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACvC,OAAO;SACV;QAED,MAAM,aAAa,GAAG,sBAAsB,CACxC,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,iBAAiB,EACjB,IAAI,CACP,CAAC;QACF,MAAM,WAAW,GAAG,aAAa;YAC7B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC;YACvC,CAAC,CAAC,IAAI,CAAC;QACX,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,WAAW,EAAE;YACtD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE;gBAC1C,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE;oBAChC,IAAI,EAAE;wBACF,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,QAAQ;4BAC1B,CAAC,CAAC,GAAG;4BACL,CAAC,CAAC,MAAM,CAAC,SAAS;gCAClB,CAAC,CAAC,cAAc;gCAChB,CAAC,CAAC,EAAE;qBACX;iBACJ,CAAC,CAAC;aACN;SACJ;QAED,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,eAAe,CAAC,GAA6B;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;QAE/D,IAAI,KAAK,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;SACpC;QAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAEO,gBAAgB,CAAC,SAAoB;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAExE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;YAChD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACvC;IACL,CAAC;IAEO,sBAAsB;QAC1B,MAAM,qCAAqC,GAAG,KAAK,CAC/C,IAAI,CAAC,QAAQ,CAAC,cAAc,EAC5B,IAAI,CAAC,QAAQ,CAAC,WAAW,EACzB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAC5B,CAAC;QACF,MAAM,cAAc,GAAoB,IAAI,CAAC,OAAO;YAChD,CAAC,CAAC,qCAAqC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC5D,CAAC,CAAC,qCAAqC,CAAC;QAE5C,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;IACrE,CAAC;IAEO,kBAAkB;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACvB,OAAO;gBACH,SAAS,EAAE,KAAK;aACnB,CAAC;SACL;QAED,MAAM,SAAS,GAAG,uBAAuB,CACrC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,eAAe,EACf,UAAU,CACb,CAAC;QACF,MAAM,YAAY,GAAG,uBAAuB,CACxC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,aAAa,EACb,IAAI,CACP,CAAC;QACF,MAAM,iBAAiB,GAAG,wBAAwB,CAC9C,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,aAAa,EACb,KAAK,CACR,CAAC;QAEF,IAAI,iBAAiB,IAAI,QAAQ,CAAC,YAAY,CAAC,EAAE;YAC7C,IAAI,WAAW,GAAW,sBAAsB,CAC5C,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,iBAAiB,EACjB,IAAI,CACP,CAAC;YACF,IAAI,KAAK,GAAG,EAAwB,CAAC;YACrC,IAAI,KAAK,GAAG,IAAI,GAAG,EAA4B,CAAC;YAChD,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;gBAClC,IAAI,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;oBAChC,SAAS;iBACZ;gBAED,MAAM,MAAM,GAAG,0BAA0B,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;gBAEhE,IACI,GAAG,CAAC,EAAE,KAAK,WAAW;oBACtB,CAAC,QAAQ,CAAC,MAAM,CAAC;wBACb,CAAC,iBAAiB,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAC3D;oBACE,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;oBACnC,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBAExC,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC3B,IAAI,CAAC,IAAI,EAAE;wBACP,IAAI,GAAG;4BACH,IAAI;4BACJ,IAAI,EAAE,EAAE;yBACX,CAAC;wBACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACjB,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;qBACzB;oBAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;wBACX,GAAG;wBACH,KAAK;wBACL,MAAM;qBACT,CAAC,CAAC;iBACN;aACJ;YAED,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;gBACpB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;aACjD;YAED,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAErC,OAAO;gBACH,SAAS,EAAE,IAAI;gBACf,WAAW;gBACX,KAAK;aACR,CAAC;SACL;QAED,OAAO;YACH,SAAS,EAAE,KAAK;SACnB,CAAC;IACN,CAAC;IAEO,0BAA0B,CAC9B,YAA4C;QAE5C,OAAO,aAAa,CAAC;YACjB,YAAY;YACZ,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAClD,MAAM,CACF,CAAC,MAAM,EAAE,EAAE,CACP,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC;gBAClC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAC/C,EACD,SAAS,CAAC,CAAC,CAAC,CACf;SACJ,CAAC,CAAC,IAAI,CACH,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAC5B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,EAC5C,oBAAoB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAClE,CAAC;IACN,CAAC;IAEO,cAAc,CAClB,MAA0B,EAC1B,SAAoB;QAEpB,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YAC1C,OAAO;gBACH,YAAY,EAAE,KAAK;aACtB,CAAC;SACL;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,GAAG,EAAE;YACN,OAAO;gBACH,YAAY,EAAE,KAAK;aACtB,CAAC;SACL;QAED,MAAM,WAAW,GAAG,uBAAuB,CACvC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,iBAAiB,EACjB,IAAI,CACP,CAAC;QACF,MAAM,aAAa,GAAG,uBAAuB,CACzC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,uBAAuB,EACvB,IAAI,CACP,CAAC;QAEF,IAAI,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC7C,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC,CAC7B,CAAC;QAEF,IAAI,QAAQ,GAAG,EAAgC,CAAC;QAChD,KAAK,IAAI,KAAK,IAAI,GAAG,CAAC,KAAK,EAAE;YACzB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YAE3C,QAAQ,CAAC,IAAI,CACT,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CACxD,CAAC;SACL;QAED,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE;YACvB,IAAI,QAAQ,CAAC,aAAa,CAAC,EAAE;gBACzB,QAAQ,CAAC,IAAI,CACT,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,aAAa,CAAC,CACtD,CAAC;aACL;iBAAM;gBACH,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;aACvD;SACJ;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC;QAClC,MAAM,SAAS,GAAG,OAAO,CACrB,CAAC,GAAG,UAAU,EAAE,GAAG,QAAQ,CAAC,EAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAChC,CAAC;QACF,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEjC,IAAI,GAAG,GAAmC;YACtC,YAAY,EAAE,IAAI;YAClB,QAAQ;YACR,GAAG;YACH,IAAI;SACP,CAAC;QAEF,IAAI,UAAU,GAAG,EAAgC,CAAC;QAClD,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE;YACrB,UAAU,CAAC,IAAI,CACX,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,iCACpB,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC,KAC7B,UAAU,EAAE,CAAC,KAAK,CAAC,IACrB,CAAC,CACN,CAAC;SACL;QAED,UAAU,CAAC,IAAI,CACX,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAC5D,CAAC;QACF,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE;YACrB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;SACtC;QACD,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;QAElC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;YACvB,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;SAC/B;QAED,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE;YACvB,GAAG,CAAC,GAAG,GAAG,WAAW,CAAC;YACtB,GAAG,CAAC,KAAK,GAAG,aAAa,CAAC;SAC7B;QAED,OAAO,GAAG,CAAC;QAEX,SAAS,kBAAkB,CACvB,GAAQ,EACR,GAAW,EACX,KAAc;YAEd,IAAI,YAAY,GAA6B;gBACzC,IAAI,EAAE,GAAG;aACZ,CAAC;YAEF,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAC7B,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;gBACrB,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;YAClC,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE;gBACpB,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC;aAChC;YAED,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE;gBACrB,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC;aACjC;YAED,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE;gBACrB,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC;aAC9B;YAED,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACjB,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC;aAC9B;YAED,MAAM,MAAM,GAAG,eAAe,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;YAE7D,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAClB,YAAY,CAAC,MAAM,GAAG,MAAM,CAAC;aAChC;YAED,OAAO,YAAY,CAAC;QACxB,CAAC;QAED,SAAS,QAAQ,CACb,KAAiC;YAEjC,OAAO,QAAQ,KAAK,eAAe;gBAC/B,CAAC,CAAC,MAAM,CACF,KAAK,EACL,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAClB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAChB;gBACH,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;IACL,CAAC;IAEO,wBAAwB;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAElE,OAAO,OAAO,CAAC,IAAI,CACf,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EACjE,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CACvC,CAAC;IACN,CAAC;IAEO,kBAAkB;;QACtB,MAAM,QAAQ,GAAG,sBAAsB,CACnC,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,WAAW,EACX,IAAI,CACP,CAAC;QACF,MAAM,MAAM,GAAG,uBAAuB,CAClC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,WAAW,EACX,IAAI,CACP,CAAC;QACF,MAAM,QAAQ,GAAG,uBAAuB,CACpC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,iBAAiB,EACjB,IAAI,CACP,CAAC;QACF,MAAM,SAAS,GAAG,uBAAuB,CACrC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,eAAe,EACf,UAAU,CACb,CAAC;QAEF,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE;YACtB,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;SACrC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAEhD,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE;YACtB,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;SACrC;QAED,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;QAEnD,gBAAgB,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QAEjD,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE;YAC9B,IACI,GAAG,CAAC,KAAK,KAAK,MAAM,CAAC,EAAE;gBACvB,GAAG,CAAC,GAAG,KAAK,MAAM;gBAClB,GAAG,CAAC,KAAK,KAAK,QAAQ,EACxB;gBACE,SAAS;aACZ;YACD,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACtC,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAA,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,mCAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACnE;QAED,IAAI,OAAO,GAAG,EAA6B,CAAC;QAE5C,OAAO,CAAC,IAAI,iCACL,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,KACzC,KAAK,EAAE,MAAM,CAAC,EAAE,EAChB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,QAAQ,IACjB,CAAC;QAEH,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE;YACjC,IACI,MAAM,CAAC,GAAG,KAAK,MAAM;gBACrB,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,EAAE;gBAC1B,MAAM,CAAC,KAAK,KAAK,QAAQ,EAC3B;gBACE,SAAS;aACZ;iBAAM,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,EAAE;gBAClD,OAAO,CAAC,IAAI,iCACL,YAAY,CACX,MAAM,CAAC,GAAG,EACV,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EACpC,MAAM,CAAC,KAAK,CACf,KACD,GAAG,EAAE,MAAM,CAAC,GAAG,EACf,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IACrB,CAAC;aACN;iBAAM;gBACH,MAAM;aACT;SACJ;QAED,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAE3B,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,OAAO;gBACH,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE,IAAI,CAAC,WAAW;aAC/B,CAAC;SACL;QAED,SAAS,YAAY,CACjB,GAAW,EACX,GAAQ,EACR,KAAoB;;YAKpB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACtD,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;YACzC,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,SAAS,GAAG,eAAe,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,0BAA0B,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YAEhE,IAAI,GAAG,GAGH;gBACA,MAAM;gBACN,QAAQ,EAAE,WAAW;gBACrB,SAAS,EAAE,YAAY;gBACvB,MAAM,EAAE,SAAS;aACpB,CAAC;YAEF,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE;gBACrB,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC;aAC1B;YAED,IAAI,CAAC,MAAA,gBAAgB,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,mCAAI,CAAC,CAAC,GAAG,CAAC,EAAE;gBACpD,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;gBACnC,MAAM,MAAM,GACR,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC;oBAC9B,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;oBACnC,CAAC,CAAC,IAAI,CAAC;gBACf,uBACI,IAAI,EAAE,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,UAAU,CAAC,GAAG,CAAC,IAC5B,GAAG,EACR;aACL;YAED,uBACI,IAAI,EAAE,EAAE,IACL,GAAG,EACR;QACN,CAAC;IACL,CAAC;IAEO,qBAAqB,CACzB,YAA4C;QAE5C,OAAO,aAAa,CAAC;YACjB,YAAY;YACZ,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAClD,MAAM,CACF,CAAC,MAAM,EAAE,EAAE,CACP,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAC9C,EACD,SAAS,CAAC,CAAC,CAAC,CACf;SACJ,CAAC,CAAC,IAAI,CACH,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAC5B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EACvC,oBAAoB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAClE,CAAC;IACN,CAAC;IAEO,SAAS,CAAC,MAA0B;QACxC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;YACnB,OAAO;gBACH,SAAS,EAAE,KAAK;aACnB,CAAC;SACL;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACvB,OAAO;gBACH,SAAS,EAAE,KAAK;aACnB,CAAC;SACL;QAED,MAAM,OAAO,GAAG,uBAAuB,CACnC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,kBAAkB,EAClB,IAAI,CACP,CAAC;QACF,MAAM,YAAY,GAAG,uBAAuB,CACxC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,aAAa,EACb,IAAI,CACP,CAAC;QACF,MAAM,SAAS,GAAG,uBAAuB,CACrC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,eAAe,EACf,UAAU,CACb,CAAC;QACF,MAAM,iBAAiB,GAAG,wBAAwB,CAC9C,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,aAAa,EACb,KAAK,CACR,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YACpB,OAAO;gBACH,SAAS,EAAE,KAAK;aACnB,CAAC;SACL;QAED,IAAI,WAAW,GAAW,sBAAsB,CAC5C,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,sBAAsB,EACtB,IAAI,CACP,CAAC;QAEF,IAAI,KAAK,GAA2B,EAAE,CAAC;QACvC,IAAI,QAAQ,GAAG,IAAI,GAAG,EAAgC,CAAC;QACvD,IAAI,OAAO,GAAG,IAAI,GAAG,EAAiB,CAAC;QACvC,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YAClC,MAAM,MAAM,GAAG,0BAA0B,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YAC9D,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAClB,IAAI,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC/B,IAAI,CAAC,IAAI,EAAE;oBACP,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;oBACb,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;iBAC7B;qBAAM;oBACH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAClB;aACJ;SACJ;QAED,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE;YAC3B,IAAI,KAAK,GAA0B,EAAE,CAAC;YAEtC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;gBACxB,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;oBAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACtC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAEhC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE;wBAClB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBAC/B;oBAED,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC;oBAC7B,MAAM,MAAM,GAAG,GAAG,CAAC;oBAEnB,MAAM,WAAW,GAAG,MAAM,CACtB,eAAe,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,MAAM,CACvC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,CACpD,EACD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAChB,CAAC;oBAEF,KAAK,CAAC,IAAI,CAAC;wBACP,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE;wBAChB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,WAAW,EAAE,IAAI,CAAC,GAAG;wBACrB,MAAM,EAAE,GAAG;wBACX,WAAW,EAAE,WAAW;6BACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;6BAClC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BACT,GAAG,EAAE,CAAC,CAAC,IAAI;4BACX,KAAK,EAAE,CAAC,CAAC,KAAK;yBACjB,CAAC,CAAC;qBACV,CAAC,CAAC;iBACN;qBAAM;oBACH,kBAAkB;oBAClB,KAAK,CAAC,IAAI,CAAC;wBACP,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE;wBAChB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,UAAU,EAAE,IAAI,CAAC,GAAG;qBACvB,CAAC,CAAC;iBACN;aACJ;YAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBAClB,IAAI,QAAQ,GAAG;oBACX,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,IAAI,EAAE,KAAK;iBACd,CAAC;gBACF,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACrB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;aACrC;SACJ;QAED,KAAK,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE;YAChC,IAAI,CAAC,iBAAiB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;gBACtD,SAAS;aACZ;YAED,aAAa;YACb,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAExC,IAAI,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC,QAAQ,EAAE;gBACX,QAAQ,GAAG;oBACP,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,EAAE;iBACX,CAAC;gBACF,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAC7B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACxB;YAED,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE;gBAClB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;oBACf,GAAG,EAAE,GAAG,CAAC,EAAE;oBACX,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,GAAG;iBAChB,CAAC,CAAC;aACN;SACJ;QAED,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;YACpB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SACjD;QAED,OAAO;YACH,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,WAAW;YACxB,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SACtC,CAAC;IACN,CAAC;IAEO,8BAA8B,CAClC,WAA+C;QAE/C,OAAO,aAAa,CAAC;YACjB,WAAW;YACX,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAClD,MAAM,CACF,CAAC,MAAM,EAAE,EAAE,CACP,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC;YACjD,2CAA2C;aAC9C,EACD,SAAS,CAAC,CAAC,CAAC,CACf;SACJ,CAAC,CAAC,IAAI,CACH,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAC5B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAChD,oBAAoB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAClE,CAAC;IACN,CAAC;IAEO,kBAAkB,CACtB,MAA8B;QAE9B,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YAC1C,OAAO;gBACH,YAAY,EAAE,KAAK;aACtB,CAAC;SACL;QAED,IAAI,GAAwB,CAAC;QAC7B,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE;YACxB,IAAI,GAAG,EAAE;gBACL,MAAM;aACT;YACD,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;gBAClB,IAAI,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,WAAW,EAAE;oBAC9B,GAAG,GAAG,CAAC,CAAC;oBACR,MAAM;iBACT;aACJ;SACJ;QACD,IAAI,CAAC,GAAG,EAAE;YACN,OAAO;gBACH,YAAY,EAAE,KAAK;aACtB,CAAC;SACL;QAED,MAAM,OAAO,GAAG,uBAAuB,CACnC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,kBAAkB,EAClB,IAAI,CACP,CAAC;QACF,MAAM,SAAS,GAAG,uBAAuB,CACrC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,eAAe,EACf,UAAU,CACb,CAAC;QAEF,MAAM,WAAW,GAAG,uBAAuB,CACvC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,sBAAsB,EACtB,IAAI,CACP,CAAC;QACF,MAAM,aAAa,GAAG,uBAAuB,CACzC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,4BAA4B,EAC5B,IAAI,CACP,CAAC;QAEF,MAAM,MAAM,GACR,UAAU,IAAI,GAAG;YACb,CAAC,CAAC,GAAG,CAAC,QAAQ;YACd,CAAC,CAAC,YAAY,IAAI,GAAG;gBACrB,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;QACrB,MAAM,MAAM,GACR,UAAU,IAAI,GAAG;YACb,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,YAAY,IAAI,GAAG;gBACrB,CAAC,CAAC,GAAG,CAAC,UAAU;gBAChB,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC;QAE1B,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,MAAM,CACtD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,CACpD,CAAC;QAEF,OAAO;YACH,YAAY,EAAE,IAAI;YAClB,MAAM;YACN,WAAW,EAAE,MAAM;YACnB,GAAG,EAAE,WAAW;YAChB,KAAK,EAAE,aAAa;YACpB,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;SAC3D,CAAC;IACN,CAAC;IAEO,uBAAuB;QAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAElE,OAAO,OAAO,CAAC,IAAI,CACf,MAAM,CACF,CAAC,CAAC,EAAE,EAAE,CACF,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC;YAChC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAClC,EACD,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAC/C,CAAC;IACN,CAAC;IAEO,oBAAoB;QACxB,IAAI,SAAS,GAAG,CACZ,QAA4C,EAC5C,UAAwB,EAC1B,EAAE;YACA,MAAM,SAAS,GAAG,uBAAuB,CACrC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,eAAe,EACf,UAAU,CACb,CAAC;YACF,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAC1C,0BAA0B,CAAC,IAAI,EAAE,CAAC,EAAE,SAAS,CAAC,CACjD,CAAC;YACF,IAAI,KAAK,GAAG,IAAI,GAAG,EAAmC,CAAC;YACvD,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC1B,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,MAAM,KAAK,GAAG,uBAAuB,CACjC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,oBAAoB,EACpB,IAAI,CACP,CAAC;YAEF,IAAI,CAAC,KAAK,EAAE;gBACR,QAAQ,CAAC,IAAI,CAAC;oBACV,UAAU,EAAE,CAAC;oBACb,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,EAAE;iBACZ,CAAC,CAAC;gBACH,OAAO;aACV;YAED,SAAS,YAAY;gBACjB,IAAI,KAAK,GAAG,EAA8B,CAAC;gBAC3C,KAAK,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,KAAK,EAAE;oBAC7B,KAAK,CAAC,IAAI,CAAC;wBACP,IAAI;wBACJ,IAAI,EAAE,KAAK;qBACd,CAAC,CAAC;iBACN;gBAED,OAAO;oBACH,UAAU,EAAE,UAAU;oBACtB,OAAO,EAAE,QAAQ;oBACjB,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;iBACtC,CAAC;YACN,CAAC;YAED,SAAS,eAAe;gBACpB,IACI,MAAM;oBACN,SAAS;oBACT,UAAU,GAAG,sBAAsB,EACrC;oBACE,SAAS,GAAG,KAAK,CAAC;oBAClB,UAAU,GAAG,CAAC,CAAC;oBACf,IAAI,MAAM,GAAG,YAAY,EAAE,CAAC;oBAC5B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACtB,OAAO,IAAI,CAAC;iBACf;gBACD,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE;gBAClB,IAAI,UAAU,CAAC,MAAM,EAAE;oBACnB,MAAM;iBACT;gBACD,IAAI,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;oBAChC,SAAS;iBACZ;gBACD,MAAM,MAAM,GAAG,0BAA0B,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;gBAChE,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;gBACnC,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACxC,IAAI,IAAI,GAAG,EAA6B,CAAC;gBAEzC,IAAI,GAAG,CAAC,EAAE,KAAK,KAAK,EAAE;oBAClB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;oBACpD,IAAI,MAAM,EAAE;wBACR,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAClB,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;wBACpC,UAAU,IAAI,CAAC,CAAC;qBACnB;iBACJ;gBAED,IAAI,GAAG,CAAC,KAAK,KAAK,KAAK,EAAE;oBACrB,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;oBAC1D,IAAI,MAAM,EAAE;wBACR,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAClB,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;wBACpC,UAAU,IAAI,CAAC,CAAC;qBACnB;iBACJ;gBAED,KAAK,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE;oBACtB,IAAI,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC1B,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;oBAClD,IAAI,MAAM,EAAE;wBACR,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAClB,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;wBACpC,UAAU,IAAI,CAAC,CAAC;qBACnB;iBACJ;gBAED,KAAK,IAAI,KAAK,IAAI,GAAG,CAAC,KAAK,EAAE;oBACzB,IAAI,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC5B,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE;wBAClB,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;wBACtB,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;wBACnD,IAAI,MAAM,EAAE;4BACR,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;4BAClB,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;4BACpC,UAAU,IAAI,CAAC,CAAC;yBACnB;qBACJ;iBACJ;gBAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;oBACjB,SAAS,GAAG,IAAI,CAAC;oBACjB,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC1B,IAAI,CAAC,GAAG,EAAE;wBACN,GAAG,GAAG,EAAE,CAAC;wBACT,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;qBACxB;oBACD,QAAQ,IAAI,CAAC,CAAC;oBAEd,GAAG,CAAC,IAAI,CAAC;wBACL,GAAG;wBACH,KAAK;wBACL,IAAI;qBACP,CAAC,CAAC;iBACN;gBAED,IAAI,eAAe,EAAE,EAAE;oBACnB,sDAAsD;oBACtD,sCAAsC;oBACtC,MAAM,KAAK,CAAC,2BAA2B,CAAC,CAAC;iBAC5C;aACJ;YAED,IAAI,SAAS,EAAE;gBACX,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;gBAC9B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACzB;QACL,CAAC,CAAA,CAAC;QAEF,OAAO,IAAI,UAAU,CAA2B,CAAC,QAAQ,EAAE,EAAE;YACzD,IAAI,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;YAC7B,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YACzB,OAAO,GAAG,CAAC;QACf,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IACxC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;QACnB,OAAO,EAAE,CAAC;KACb;IACD,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1C,IAAI,aAAa,GAAG,CAAC,EAAE;QACnB,OAAO,MAAM,CAAC;KACjB;IACD,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,aAAa,GAAG,CAAC,CAAC,CAAC;IAC9D,IAAI,cAAc,GAAG,CAAC,EAAE;QACpB,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;KAC7C;IACD,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;AAC/C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,IAAY;IACpD,OAAO,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CACrB,GAAW,EACX,KAAa,EACb,KAAc,EACd,KAAa;IAEb,IAAI,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE;QACf,IAAI,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,cAAc,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,MAAM,GAAG,eAAe,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;QACtD,IAAI,WAAmB,CAAC;QACxB,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,IAAI,aAAa,EAAE;YACf,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,GAAG,CAAC,CAAC;SACd;aAAM,IAAI,cAAc,EAAE;YACvB,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;SAClC;aAAM,IAAI,WAAW,EAAE;YACpB,WAAW,GAAG,GAAG,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YACxD,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC;SACvC;aAAM;YACH,WAAW,GAAG,GAAG,CAAC;SACrB;QAED,MAAM,OAAO,GAAG,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAExD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,IAAI,MAAM,GAA0B;gBAChC,GAAG;gBACH,OAAO;aACV,CAAC;YAEF,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACjB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;YAED,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAClB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;aAC1B;YAED,IAAI,aAAa,EAAE;gBACf,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;aAC1B;iBAAM,IAAI,cAAc,EAAE;gBACvB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;aAC3B;iBAAM,IAAI,WAAW,EAAE;gBACpB,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;aACxB;YAED,OAAO,MAAM,CAAC;SACjB;KACJ;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACvB,KAAa,EACb,WAAmB,EACnB,KAAa;IAEb,IAAI,OAAO,GAAG,EAA+B,CAAC;IAE9C,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE;QACrB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAEtC,IAAI,KAAK,IAAI,CAAC,EAAE;YACZ,CAAC,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;YAEzB,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,MAAM,iBAAiB,GAAG,EAAE,CAAC;YAC7B,OAEI,SAAS,GAAG,CAAC,IAAI,QAAQ,IAAI,iBAAiB,EAC9C,SAAS,IAAI,CAAC,EAChB;gBACE,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;gBAC9B,IAAI,IAAI,KAAK,IAAI,EAAE;oBACf,SAAS,IAAI,CAAC,CAAC;oBACf,MAAM;iBACT;qBAAM,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI,EAAE;oBACtC,QAAQ,IAAI,CAAC,CAAC;iBACjB;aACJ;YAED,IAAI,OAAO,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;YACnC,OAEI,OAAO,GAAG,KAAK,CAAC,MAAM,IAAI,QAAQ,IAAI,iBAAiB,EACvD,OAAO,IAAI,CAAC,EACd;gBACE,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC5B,IAAI,IAAI,KAAK,IAAI,EAAE;oBACf,MAAM;iBACT;qBAAM,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI,EAAE;oBACtC,QAAQ,IAAI,CAAC,CAAC;iBACjB;aACJ;YAED,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAEjD,IAAI,cAAc,GAAG,KAAK,GAAG,SAAS,CAAC;YACvC,IAAI,YAAY,GAAG,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC;YAEjD,OAAO,CAAC,IAAI,CAAC;gBACT,KAAK,EAAE,KAAK,GAAG,WAAW;gBAC1B,QAAQ,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,WAAW;gBAC5C,IAAI,EAAE,IAAI;gBACV,mBAAmB,EAAE,cAAc;gBACnC,iBAAiB,EAAE,YAAY;aAClC,CAAC,CAAC;SACN;aAAM;YACH,MAAM;SACT;KACJ;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CACpB,WAAgB,EAChB,MAAW;;IAEX,IAAI,OAAO,GAAmC,QAAQ,CAClD,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,mCAAI,EAAE,EACvB,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,mCAAI,EAAE,EAClB,SAAS,CACZ,CAAC;IAEF,MAAM,SAAS,GAAG,KAAK,CACnB,MAAM,CAAC,IAAI,CAAC,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,mCAAI,EAAE,CAAC,EACrC,MAAM,CAAC,IAAI,CAAC,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,mCAAI,EAAE,CAAC,CACnC,CAAC;IAEF,KAAK,IAAI,KAAK,IAAI,SAAS,EAAE;QACzB,OAAO,CAAC,IAAI,CACR,GAAG,QAAQ,CACP,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,0CAAG,KAAK,CAAC,mCAAI,EAAE,EACjC,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAG,KAAK,CAAC,mCAAI,EAAE,EAC5B,KAAK,CACR,CACJ,CAAC;KACL;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,QAAQ,CAAC,SAAkB,EAAE,UAAmB,EAAE,KAAa;IACpE,IAAI,OAAO,GAAmC,EAAE,CAAC;IACjD,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAEvE,KAAK,IAAI,GAAG,IAAI,OAAO,EAAE;QACrB,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE;YACnC,MAAM,MAAM,GACR,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC1C,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;oBAChD,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,SAAS,CAAC;YAEpB,6BAA6B;YAC7B,WAAW,GAAG,IAAI,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,GAAG;gBACT,KAAK;gBACL,MAAM,EAAE,MAAM;aACjB,CAAC,CAAC;SACN;aAAM;YACH,OAAO,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,GAAG;gBACT,KAAK;gBACL,MAAM,EAAE,MAAM;aACjB,CAAC,CAAC;SACN;KACJ;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACrB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACrE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@casual-simulation/aux-vm-browser",
3
- "version": "3.0.18-alpha.2734086997",
3
+ "version": "3.0.18",
4
4
  "description": "A set of utilities required to securely run an AUX in a web browser.",
5
5
  "keywords": [
6
6
  "aux"
@@ -40,10 +40,10 @@
40
40
  "url": "https://github.com/casual-simulation/casualos/issues"
41
41
  },
42
42
  "dependencies": {
43
- "@casual-simulation/aux-common": "^3.0.18-alpha.2734086997",
44
- "@casual-simulation/aux-records": "^3.0.18-alpha.2734086997",
45
- "@casual-simulation/aux-vm": "^3.0.18-alpha.2734086997",
46
- "@casual-simulation/aux-vm-client": "^3.0.18-alpha.2734086997",
43
+ "@casual-simulation/aux-common": "^3.0.18",
44
+ "@casual-simulation/aux-records": "^3.0.18",
45
+ "@casual-simulation/aux-vm": "^3.0.18",
46
+ "@casual-simulation/aux-vm-client": "^3.0.18",
47
47
  "@casual-simulation/causal-trees": "^3.0.14",
48
48
  "@casual-simulation/crypto": "^3.0.14",
49
49
  "@casual-simulation/crypto-browser": "^3.0.14",
@@ -53,5 +53,5 @@
53
53
  "rxjs": "^6.5.2",
54
54
  "uuid": "^8.3.2"
55
55
  },
56
- "gitHead": "008402935bd37b6b583899e5d0af8232d7ea2f42"
56
+ "gitHead": "afa4e6a204757845d0da0dd35fcb4450ac1913fe"
57
57
  }