ahegao 1.69.46 → 1.69.47

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.
@@ -1,35 +1,34 @@
1
- import { existsSync, writeFileSync } from "fs";
2
- import path from "path";
3
- import { RangedNumber } from "../structures/structs";
4
- import { addAllArrayToSet, chalkRainbowColor, findGeniusLyrics, generateHash, getArtistsFromFlacMetadata, getLast, getRandomWeighedItem, getTitleFromFlacMetadata, incrementMap, isString, libraryCleanUpStartAndEndOfString, libraryFindFeaturing, librarySplitMultipleArtists, musicMetadata, noop, randomBoolean, replaceLastTerminalLine, sanitizeStringForSeed, softToFixed, songTitleExtractSide, stringify, toStamp, whileFalseAsyncMs, whileFalseAsyncS } from "../utils/util";
5
- import { EMPTY_ARRAY, EMPTY_MAP, KEY_WORDS_REGEX, VARIOUS_ARTISTS } from "./fields";
6
- import { floor, isArray, isNumber, max } from "mathjs";
7
- export class TitleAndArtists {
8
- artists;
9
- artist;
10
- title;
11
- sanitized_for_seed_artist;
12
- sanitized_for_seed_title;
13
- seed;
14
- hash;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Maybe = exports.Pair = exports.TextComp = exports.WeightedMap = exports.Config = exports.Lockable = exports.NumbersAnalysis = exports.NumberAnalysis = exports.Timer = exports.BoundedDeque = exports.Compare = exports.MUSIC_ARTIST_ALIASES = exports.Aliases = exports.TitleAndArtists = void 0;
7
+ const fs_1 = require("fs");
8
+ const path_1 = __importDefault(require("path"));
9
+ const structs_1 = require("../structures/structs");
10
+ const util_1 = require("../utils/util");
11
+ const fields_1 = require("./fields");
12
+ const mathjs_1 = require("mathjs");
13
+ class TitleAndArtists {
15
14
  constructor(artists, artist, title) {
16
15
  this.artists = artists;
17
16
  this.artist = artist;
18
17
  this.title = title;
19
- this.sanitized_for_seed_artist = sanitizeStringForSeed(this.artist);
20
- this.sanitized_for_seed_title = sanitizeStringForSeed(title);
18
+ this.sanitized_for_seed_artist = (0, util_1.sanitizeStringForSeed)(this.artist);
19
+ this.sanitized_for_seed_title = (0, util_1.sanitizeStringForSeed)(title);
21
20
  this.seed = `${this.sanitized_for_seed_artist} ${this.sanitized_for_seed_title}`.trim();
22
- this.hash = generateHash(this.seed);
21
+ this.hash = (0, util_1.generateHash)(this.seed);
23
22
  }
24
23
  get artistsDashTitle() {
25
24
  return `${this.artist} - ${this.title}`;
26
25
  }
27
26
  async findGeniusLyrics() {
28
- let lyrics = await findGeniusLyrics(this.artistsDashTitle);
27
+ let lyrics = await (0, util_1.findGeniusLyrics)(this.artistsDashTitle);
29
28
  if (this.artists.length > 1) {
30
29
  if (lyrics == undefined || lyrics.length == 0) {
31
30
  for (const artist of this.artists) {
32
- const geniusLyrics = await findGeniusLyrics(`${artist} - ${this.title}`);
31
+ const geniusLyrics = await (0, util_1.findGeniusLyrics)(`${artist} - ${this.title}`);
33
32
  if (geniusLyrics != undefined && geniusLyrics.length > 0) {
34
33
  lyrics = geniusLyrics;
35
34
  break;
@@ -40,39 +39,42 @@ export class TitleAndArtists {
40
39
  return lyrics;
41
40
  }
42
41
  }
42
+ exports.TitleAndArtists = TitleAndArtists;
43
43
  (function (TitleAndArtists) {
44
- async function fromFileInfo(fileInfo, aliases = MUSIC_ARTIST_ALIASES) {
44
+ async function fromFileInfo(fileInfo, aliases = exports.MUSIC_ARTIST_ALIASES) {
45
45
  let name = fileInfo.name;
46
- const tags = await musicMetadata.parseFile(fileInfo.path);
47
- const artists = getArtistsFromFlacMetadata(tags, aliases);
46
+ const tags = await util_1.musicMetadata.parseFile(fileInfo.path);
47
+ const artists = (0, util_1.getArtistsFromFlacMetadata)(tags, aliases);
48
48
  let artistsArray = Array.from(artists);
49
49
  artistsArray.sort();
50
50
  let artistsString = artistsArray.join(" & ");
51
- let title = getTitleFromFlacMetadata(tags).replaceAll("[", "(").replaceAll("]", ")");
51
+ let title = (0, util_1.getTitleFromFlacMetadata)(tags).replaceAll("[", "(").replaceAll("]", ")");
52
52
  //region no artists / Various Artists
53
53
  if (name.includes(" - ")) {
54
- if (artistsString.length == 0 || artistsString === VARIOUS_ARTISTS) {
55
- artistsString = songTitleExtractSide(name, true, false);
54
+ if (artistsString.length == 0 || artistsString === fields_1.VARIOUS_ARTISTS) {
55
+ artistsString = (0, util_1.songTitleExtractSide)(name, true, false);
56
56
  if (artistsString.includes(" - ")) {
57
- artistsString = songTitleExtractSide(artistsString, true, true);
57
+ artistsString = (0, util_1.songTitleExtractSide)(artistsString, true, true);
58
58
  }
59
- addAllArrayToSet(librarySplitMultipleArtists(artistsString, aliases), artists);
60
- artists.delete(VARIOUS_ARTISTS);
59
+ (0, util_1.addAllArrayToSet)((0, util_1.librarySplitMultipleArtists)(artistsString, aliases), artists);
60
+ artists.delete(fields_1.VARIOUS_ARTISTS);
61
61
  artistsArray = Array.from(artists);
62
62
  artistsString = artistsArray.join(" & ");
63
63
  }
64
64
  }
65
65
  if (title.length == 0 || title.includes(" - ")) {
66
- title = songTitleExtractSide(name, true, true);
66
+ title = (0, util_1.songTitleExtractSide)(name, true, true);
67
67
  }
68
- const titleFeaturingResult = libraryFindFeaturing(title, aliases);
69
- title = libraryCleanUpStartAndEndOfString(titleFeaturingResult.newName);
68
+ const titleFeaturingResult = (0, util_1.libraryFindFeaturing)(title, aliases);
69
+ title = (0, util_1.libraryCleanUpStartAndEndOfString)(titleFeaturingResult.newName);
70
70
  return new TitleAndArtists(artistsArray, artistsString, title);
71
71
  }
72
72
  TitleAndArtists.fromFileInfo = fromFileInfo;
73
- })(TitleAndArtists || (TitleAndArtists = {}));
74
- export class Aliases {
75
- reverseAliases = new Map;
73
+ })(TitleAndArtists || (exports.TitleAndArtists = TitleAndArtists = {}));
74
+ class Aliases {
75
+ constructor() {
76
+ this.reverseAliases = new Map;
77
+ }
76
78
  add(name, ...aliases) {
77
79
  aliases.push(name);
78
80
  for (const alias of aliases) {
@@ -81,11 +83,13 @@ export class Aliases {
81
83
  return this;
82
84
  }
83
85
  get(name) {
84
- return this.reverseAliases.get(name.trim().toLowerCase()) ?? name;
86
+ var _a;
87
+ return (_a = this.reverseAliases.get(name.trim().toLowerCase())) !== null && _a !== void 0 ? _a : name;
85
88
  }
86
89
  }
87
- export const MUSIC_ARTIST_ALIASES = new Aliases()
88
- .add(VARIOUS_ARTISTS)
90
+ exports.Aliases = Aliases;
91
+ exports.MUSIC_ARTIST_ALIASES = new Aliases()
92
+ .add(fields_1.VARIOUS_ARTISTS)
89
93
  .add("artist_lost_please_fix", "AReallyLongAndAwesomeNameThatIsBetterThanYoursInEveryPossibleWay", "Original")
90
94
  .add("Vylet Pony", "Vylet", "VyletPony")
91
95
  .add("General Mumble", "Mumble", "GeneralMumble", "GM")
@@ -161,7 +165,7 @@ export const MUSIC_ARTIST_ALIASES = new Aliases()
161
165
  .add("IgnaPon3", "IgnaPone", "IgnaPony", "Igna")
162
166
  .add("Sam Synthis", "Synthis")
163
167
  .add("JoinedTheHerd", "JTH", "JoinedTheHerd (JTH)", "Joined The Herd", "Joined The Herd (JTH)", "JTH (JoinedTheHerd)");
164
- export var Compare;
168
+ var Compare;
165
169
  (function (Compare) {
166
170
  let NumberCompareOperator;
167
171
  (function (NumberCompareOperator) {
@@ -224,7 +228,7 @@ export var Compare;
224
228
  }
225
229
  Compare.fromString = fromString;
226
230
  function compare(value, operator) {
227
- if (isString(value)) {
231
+ if ((0, util_1.isString)(value)) {
228
232
  return string(value, operator);
229
233
  }
230
234
  else {
@@ -266,12 +270,11 @@ export var Compare;
266
270
  }
267
271
  }
268
272
  Compare.string = string;
269
- })(Compare || (Compare = {}));
270
- export class BoundedDeque {
271
- maxSize;
272
- queue = [];
273
+ })(Compare || (exports.Compare = Compare = {}));
274
+ class BoundedDeque {
273
275
  constructor(maxSize) {
274
276
  this.maxSize = maxSize;
277
+ this.queue = [];
275
278
  if (maxSize < 1)
276
279
  throw new Error("Max size must be at least 1!");
277
280
  }
@@ -293,7 +296,7 @@ export class BoundedDeque {
293
296
  return this.queue[0];
294
297
  }
295
298
  peekEnd() {
296
- return getLast(this.queue);
299
+ return (0, util_1.getLast)(this.queue);
297
300
  }
298
301
  get size() {
299
302
  return this.queue.length;
@@ -324,11 +327,13 @@ export class BoundedDeque {
324
327
  }
325
328
  }
326
329
  }
327
- export class Timer {
328
- _startMs = 0;
329
- _lastIncrementMs = 0;
330
- _count = 0;
330
+ exports.BoundedDeque = BoundedDeque;
331
+ class Timer {
331
332
  constructor() {
333
+ this._startMs = 0;
334
+ this._lastIncrementMs = 0;
335
+ this._count = 0;
336
+ this.updateLoadingBar = util_1.noop;
332
337
  this.reset();
333
338
  }
334
339
  reset() {
@@ -369,7 +374,7 @@ export class Timer {
369
374
  return this._count / this.elapsedS;
370
375
  }
371
376
  get countPerSecondString() {
372
- return `${softToFixed(this.countPerSecond)}/s`;
377
+ return `${(0, util_1.softToFixed)(this.countPerSecond)}/s`;
373
378
  }
374
379
  isFinished(goalCount) {
375
380
  return goalCount <= this._count;
@@ -378,14 +383,14 @@ export class Timer {
378
383
  return (goalCount - this._count) / this.countPerSecond;
379
384
  }
380
385
  getETASecondsForCountString(goalCount) {
381
- return toStamp(this.getETASecondsForCount(goalCount));
386
+ return (0, util_1.toStamp)(this.getETASecondsForCount(goalCount));
382
387
  }
383
388
  getCountAndPercentString(goalCount) {
384
389
  if (this._count == 0) {
385
- return `[0/${softToFixed(goalCount)}]~[0.00%]`;
390
+ return `[0/${(0, util_1.softToFixed)(goalCount)}]~[0.00%]`;
386
391
  }
387
392
  const percent = (this._count / goalCount) * 100;
388
- return `[${softToFixed(this.count)}/${softToFixed(goalCount)}]~[${(percent).toFixed(2)}%]`;
393
+ return `[${(0, util_1.softToFixed)(this.count)}/${(0, util_1.softToFixed)(goalCount)}]~[${(percent).toFixed(2)}%]`;
389
394
  }
390
395
  getFullStatsString(goalCount) {
391
396
  if (this._count == 0) {
@@ -393,16 +398,16 @@ export class Timer {
393
398
  }
394
399
  return `${this.getCountAndPercentString(goalCount)} | ${this.getETASecondsForCountString(goalCount)} | ${this.countPerSecondString}`;
395
400
  }
396
- startLoadingBarForS(durationS, suffixDecider = "", onFinish = noop, intervalMs = 250, rainbowIntervalMs = 250) {
401
+ startLoadingBarForS(durationS, suffixDecider = "", onFinish = util_1.noop, intervalMs = 250, rainbowIntervalMs = 250) {
397
402
  this.reset();
398
403
  const loop = this.startLoadingBarUntilDone(durationS, suffixDecider, onFinish, false, intervalMs, rainbowIntervalMs);
399
404
  let secondsPassed = 0;
400
405
  let finished = false;
401
- whileFalseAsyncMs(intervalMs, () => {
406
+ (0, util_1.whileFalseAsyncMs)(intervalMs, () => {
402
407
  this.increment(secondsPassed - this._count);
403
408
  return finished;
404
409
  });
405
- whileFalseAsyncS(1, () => {
410
+ (0, util_1.whileFalseAsyncS)(1, () => {
406
411
  ++secondsPassed;
407
412
  if (durationS <= secondsPassed) {
408
413
  finished = true;
@@ -411,11 +416,10 @@ export class Timer {
411
416
  });
412
417
  return loop;
413
418
  }
414
- updateLoadingBar = noop;
415
- startLoadingBarUntilDone(goalCountDecider, suffixDecider = "", onFinish = noop, fullStats = true, intervalMs = 250, rainbowIntervalMs = 1000) {
416
- const cycleRainbowEveryMs = max(rainbowIntervalMs, intervalMs);
417
- const goalCountIsNumber = isNumber(goalCountDecider);
418
- const suffixIsString = isString(suffixDecider);
419
+ startLoadingBarUntilDone(goalCountDecider, suffixDecider = "", onFinish = util_1.noop, fullStats = true, intervalMs = 250, rainbowIntervalMs = 1000) {
420
+ const cycleRainbowEveryMs = (0, mathjs_1.max)(rainbowIntervalMs, intervalMs);
421
+ const goalCountIsNumber = (0, mathjs_1.isNumber)(goalCountDecider);
422
+ const suffixIsString = (0, util_1.isString)(suffixDecider);
419
423
  this.updateLoadingBar = () => {
420
424
  const goalCount = goalCountIsNumber ? goalCountDecider : goalCountDecider();
421
425
  const finished = goalCount <= this._count;
@@ -427,14 +431,14 @@ export class Timer {
427
431
  if (suffix.length > 0) {
428
432
  line += ` | ${suffix}`;
429
433
  }
430
- const rainbowIndex = floor(Date.now() / cycleRainbowEveryMs);
434
+ const rainbowIndex = (0, mathjs_1.floor)(Date.now() / cycleRainbowEveryMs);
431
435
  if (rainbowIntervalMs > 0) {
432
- line = chalkRainbowColor(line, rainbowIndex);
436
+ line = (0, util_1.chalkRainbowColor)(line, rainbowIndex);
433
437
  }
434
- replaceLastTerminalLine(line);
438
+ (0, util_1.replaceLastTerminalLine)(line);
435
439
  if (finished) {
436
- console.log(chalkRainbowColor(` | Finished!`, rainbowIndex));
437
- this.updateLoadingBar = noop;
440
+ console.log((0, util_1.chalkRainbowColor)(` | Finished!`, rainbowIndex));
441
+ this.updateLoadingBar = util_1.noop;
438
442
  onFinish();
439
443
  }
440
444
  };
@@ -445,10 +449,11 @@ export class Timer {
445
449
  }
446
450
  startReplaceLastTerminalLineLoop(stringMaker, intervalMs = 250) {
447
451
  return setInterval(() => {
448
- replaceLastTerminalLine(stringMaker());
452
+ (0, util_1.replaceLastTerminalLine)(stringMaker());
449
453
  }, intervalMs);
450
454
  }
451
455
  }
456
+ exports.Timer = Timer;
452
457
  // export class SmartTimer extends Timer
453
458
  // {
454
459
  // private _lookbackHistoryMs: BoundedDeque<number>
@@ -461,10 +466,10 @@ export class Timer {
461
466
  // {
462
467
  // }
463
468
  // }
464
- export class NumberAnalysis {
465
- _lowest = Number.MAX_VALUE;
466
- _highest = Number.MIN_VALUE;
467
- constructor(values = EMPTY_ARRAY) {
469
+ class NumberAnalysis {
470
+ constructor(values = fields_1.EMPTY_ARRAY) {
471
+ this._lowest = Number.MAX_VALUE;
472
+ this._highest = Number.MIN_VALUE;
468
473
  this.updateArray(values);
469
474
  }
470
475
  updateArray(buffer) {
@@ -508,25 +513,24 @@ export class NumberAnalysis {
508
513
  return this._highest - this._lowest;
509
514
  }
510
515
  toRangedNumber() {
511
- return RangedNumber.range(this._lowest, this._highest);
516
+ return structs_1.RangedNumber.range(this._lowest, this._highest);
512
517
  }
513
518
  toString() {
514
519
  return `${this._lowest}<->${this._highest}`;
515
520
  }
516
521
  }
517
- export class NumbersAnalysis extends NumberAnalysis {
518
- _sum = 0;
519
- array;
520
- map;
521
- constructor(values = EMPTY_ARRAY) {
522
- super(EMPTY_ARRAY);
522
+ exports.NumberAnalysis = NumberAnalysis;
523
+ class NumbersAnalysis extends NumberAnalysis {
524
+ constructor(values = fields_1.EMPTY_ARRAY) {
525
+ super(fields_1.EMPTY_ARRAY);
526
+ this._sum = 0;
523
527
  this.array = [];
524
528
  this.map = new Map();
525
529
  this.updateArray(values);
526
530
  }
527
531
  update(value) {
528
532
  super.update(value);
529
- incrementMap(this.map, value);
533
+ (0, util_1.incrementMap)(this.map, value);
530
534
  this.array.push(value);
531
535
  this._sum += value;
532
536
  }
@@ -559,17 +563,17 @@ export class NumbersAnalysis extends NumberAnalysis {
559
563
  return Array.from(this.map.keys()).sort((a, b) => ascending ? a - b : b - a);
560
564
  }
561
565
  toString() {
562
- let text = `[${this.lowest}<->${this.highest} | count: ${this.count} | sum: ${this._sum} | average: ${softToFixed(this.average)} | median: ${this.median}]`;
566
+ let text = `[${this.lowest}<->${this.highest} | count: ${this.count} | sum: ${this._sum} | average: ${(0, util_1.softToFixed)(this.average)} | median: ${this.median}]`;
563
567
  for (const key of this.getSortedFrequencyKeys()) {
564
568
  text += `\n- ${key}: ${this.map.get(key)}`;
565
569
  }
566
570
  return text;
567
571
  }
568
572
  }
569
- export class Lockable {
570
- _locked = false;
571
- _item;
573
+ exports.NumbersAnalysis = NumbersAnalysis;
574
+ class Lockable {
572
575
  constructor(item) {
576
+ this._locked = false;
573
577
  this._item = item;
574
578
  }
575
579
  get item() {
@@ -603,16 +607,14 @@ export class Lockable {
603
607
  return `${this._item}`;
604
608
  }
605
609
  }
606
- export class Config {
607
- configPath;
608
- _init = false;
609
- name;
610
- basePath;
611
- _config = {};
612
- constructor(configPath = `${path.resolve(__dirname, "..")}/config.json`) {
610
+ exports.Lockable = Lockable;
611
+ class Config {
612
+ constructor(configPath = `${path_1.default.resolve(__dirname, "..")}/config.json`) {
613
613
  this.configPath = configPath;
614
- this.basePath = path.resolve(__dirname, "..");
615
- this.name = path.basename(configPath);
614
+ this._init = false;
615
+ this._config = {};
616
+ this.basePath = path_1.default.resolve(__dirname, "..");
617
+ this.name = path_1.default.basename(configPath);
616
618
  }
617
619
  get isInit() {
618
620
  return this._init;
@@ -672,7 +674,7 @@ export class Config {
672
674
  }
673
675
  init() {
674
676
  this.throwIfInit();
675
- if (existsSync(this.configPath)) {
677
+ if ((0, fs_1.existsSync)(this.configPath)) {
676
678
  const localConfigJson = require(this.configPath);
677
679
  for (const [key, value] of Object.entries(localConfigJson)) {
678
680
  const defaultValue = this._config[key];
@@ -690,8 +692,8 @@ export class Config {
690
692
  return this;
691
693
  }
692
694
  save() {
693
- const configJson = stringify(this._config);
694
- writeFileSync(this.configPath, configJson);
695
+ const configJson = (0, util_1.stringify)(this._config);
696
+ (0, fs_1.writeFileSync)(this.configPath, configJson);
695
697
  return this;
696
698
  }
697
699
  toString() {
@@ -702,10 +704,9 @@ export class Config {
702
704
  return result;
703
705
  }
704
706
  }
707
+ exports.Config = Config;
705
708
  //#region WeightedMap start
706
- export class WeightedMap {
707
- _map;
708
- _totalWeight;
709
+ class WeightedMap {
709
710
  constructor() {
710
711
  this._map = new Map();
711
712
  this._totalWeight = 0;
@@ -722,7 +723,7 @@ export class WeightedMap {
722
723
  if (this.empty) {
723
724
  throw `${this}: Cannot get item; map is empty`;
724
725
  }
725
- const item = getRandomWeighedItem(this._map, this._totalWeight);
726
+ const item = (0, util_1.getRandomWeighedItem)(this._map, this._totalWeight);
726
727
  if (item == null) {
727
728
  throw `${this}: Got ${item} item`;
728
729
  }
@@ -738,10 +739,11 @@ export class WeightedMap {
738
739
  return this._map.size;
739
740
  }
740
741
  }
742
+ exports.WeightedMap = WeightedMap;
741
743
  (function (WeightedMap) {
742
744
  function of(input) {
743
745
  const weightedMap = new WeightedMap;
744
- if (isArray(input)) {
746
+ if ((0, mathjs_1.isArray)(input)) {
745
747
  for (const item of input) {
746
748
  weightedMap.add(item);
747
749
  }
@@ -752,20 +754,17 @@ export class WeightedMap {
752
754
  return weightedMap;
753
755
  }
754
756
  WeightedMap.of = of;
755
- })(WeightedMap || (WeightedMap = {}));
756
- export class TextComp {
757
- text;
758
- chance;
759
- continueToChildOnFail;
760
- _children;
757
+ })(WeightedMap || (exports.WeightedMap = WeightedMap = {}));
758
+ class TextComp {
761
759
  constructor(data) {
760
+ var _a, _b, _c, _d;
762
761
  if (data == null) {
763
762
  this._children = new WeightedMap;
764
763
  throw `${this}: Cannot create TextComp from null`;
765
764
  }
766
765
  this.text = data.text == undefined ? "" : data.text.trim();
767
- this.chance = data.chance ?? 1;
768
- this.continueToChildOnFail = data.continueToChildOnFail ?? false;
766
+ this.chance = (_a = data.chance) !== null && _a !== void 0 ? _a : 1;
767
+ this.continueToChildOnFail = (_b = data.continueToChildOnFail) !== null && _b !== void 0 ? _b : false;
769
768
  if (data.children == undefined) {
770
769
  this._children = new WeightedMap;
771
770
  }
@@ -775,14 +774,14 @@ export class TextComp {
775
774
  }
776
775
  else {
777
776
  this._children = new WeightedMap;
778
- if (isArray(data.children)) {
777
+ if ((0, mathjs_1.isArray)(data.children)) {
779
778
  for (const child of data.children) {
780
- const childWeight = child.weight ?? 1;
779
+ const childWeight = (_c = child.weight) !== null && _c !== void 0 ? _c : 1;
781
780
  this._children.add(TextComp.of(child), childWeight);
782
781
  }
783
782
  }
784
783
  else {
785
- const childWeight = data.children.weight ?? 1;
784
+ const childWeight = (_d = data.children.weight) !== null && _d !== void 0 ? _d : 1;
786
785
  this._children.add(TextComp.of(data.children), childWeight);
787
786
  }
788
787
  }
@@ -794,11 +793,11 @@ export class TextComp {
794
793
  getRandomChild() {
795
794
  return this._children.get();
796
795
  }
797
- generate(lookup = EMPTY_MAP, separator = " ", text = "") {
798
- if (randomBoolean(this.chance)) {
796
+ generate(lookup = fields_1.EMPTY_MAP, separator = " ", text = "") {
797
+ if ((0, util_1.randomBoolean)(this.chance)) {
799
798
  if (this.text.length > 0) {
800
799
  //#region [lookup] start
801
- text += `${text.length > 0 ? separator : ""}${this.text.replaceAll(KEY_WORDS_REGEX, (_, match) => {
800
+ text += `${text.length > 0 ? separator : ""}${this.text.replaceAll(fields_1.KEY_WORDS_REGEX, (_, match) => {
802
801
  const lookupItem = lookup.get(match);
803
802
  if (lookupItem == null) {
804
803
  return match;
@@ -828,9 +827,10 @@ export class TextComp {
828
827
  return `TextComp: "${this.text}" | chance: ${this.chance} | children: ${this._children.size}`;
829
828
  }
830
829
  }
830
+ exports.TextComp = TextComp;
831
831
  (function (TextComp) {
832
832
  function of(item) {
833
- if (isString(item)) {
833
+ if ((0, util_1.isString)(item)) {
834
834
  return TextComp.of({ text: item });
835
835
  }
836
836
  else if (item instanceof TextComp) {
@@ -841,12 +841,10 @@ export class TextComp {
841
841
  }
842
842
  }
843
843
  TextComp.of = of;
844
- })(TextComp || (TextComp = {}));
844
+ })(TextComp || (exports.TextComp = TextComp = {}));
845
845
  //#endregion
846
846
  //region TextComp end
847
- export class Pair {
848
- left;
849
- right;
847
+ class Pair {
850
848
  constructor(left, right) {
851
849
  this.left = left;
852
850
  this.right = right;
@@ -867,9 +865,8 @@ export class Pair {
867
865
  return `(${this.left} | ${this.right})`;
868
866
  }
869
867
  }
870
- export class Maybe {
871
- value;
872
- present;
868
+ exports.Pair = Pair;
869
+ class Maybe {
873
870
  constructor(value) {
874
871
  this.value = value;
875
872
  this.present = value != null;
@@ -887,6 +884,7 @@ export class Maybe {
887
884
  return value;
888
885
  }
889
886
  }
887
+ exports.Maybe = Maybe;
890
888
  (function (Maybe) {
891
889
  Maybe.EMPTY = new Maybe(null);
892
890
  function fromArray(valuesArray, index) {
@@ -903,4 +901,5 @@ export class Maybe {
903
901
  return new Maybe(value);
904
902
  }
905
903
  Maybe.of = of;
906
- })(Maybe || (Maybe = {}));
904
+ })(Maybe || (exports.Maybe = Maybe = {}));
905
+ //# sourceMappingURL=classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"classes.js","sourceRoot":"","sources":["../../src/types/classes.ts"],"names":[],"mappings":";;;;;;AAAA,2BAA8C;AAC9C,gDAAuB;AACvB,mDAA8D;AAC9D,wCAAsd;AACtd,qCAAmF;AACnF,mCAAsD;AAEtD,MAAa,eAAe;IAOxB,YAA4B,OAAiB,EAAkB,MAAc,EAAkB,KAAa;QAAhF,YAAO,GAAP,OAAO,CAAU;QAAkB,WAAM,GAAN,MAAM,CAAQ;QAAkB,UAAK,GAAL,KAAK,CAAQ;QAExG,IAAI,CAAC,yBAAyB,GAAG,IAAA,4BAAqB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnE,IAAI,CAAC,wBAAwB,GAAG,IAAA,4BAAqB,EAAC,KAAK,CAAC,CAAA;QAC5D,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,yBAAyB,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC,IAAI,EAAE,CAAA;QACvF,IAAI,CAAC,IAAI,GAAG,IAAA,mBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IAED,IAAI,gBAAgB;QAEhB,OAAO,GAAG,IAAI,CAAC,MAAM,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;IAC3C,CAAC;IAED,KAAK,CAAC,gBAAgB;QAElB,IAAI,MAAM,GAAG,MAAM,IAAA,uBAAgB,EAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAE1D,IAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAC1B,CAAC;YACG,IAAG,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAC5C,CAAC;gBACG,KAAI,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAChC,CAAC;oBACG,MAAM,YAAY,GAAG,MAAM,IAAA,uBAAgB,EAAC,GAAG,MAAM,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;oBACxE,IAAG,YAAY,IAAI,SAAS,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EACvD,CAAC;wBACG,MAAM,GAAG,YAAY,CAAA;wBACrB,MAAK;oBACT,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAA;IACjB,CAAC;CACJ;AA1CD,0CA0CC;AAED,WAAiB,eAAe;IAErB,KAAK,UAAU,YAAY,CAAC,QAAkB,EAAE,UAAmB,4BAAoB;QAE1F,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;QAExB,MAAM,IAAI,GAAG,MAAM,oBAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACzD,MAAM,OAAO,GAAG,IAAA,iCAA0B,EAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACzD,IAAI,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACtC,YAAY,CAAC,IAAI,EAAE,CAAA;QACnB,IAAI,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC5C,IAAI,KAAK,GAAG,IAAA,+BAAwB,EAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAEpF,qCAAqC;QACrC,IAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EACvB,CAAC;YACG,IAAG,aAAa,CAAC,MAAM,IAAI,CAAC,IAAI,aAAa,KAAK,wBAAe,EACjE,CAAC;gBACG,aAAa,GAAG,IAAA,2BAAoB,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;gBACvD,IAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,EAChC,CAAC;oBACG,aAAa,GAAG,IAAA,2BAAoB,EAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;gBACnE,CAAC;gBACD,IAAA,uBAAgB,EAAC,IAAA,kCAA2B,EAAC,aAAa,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAA;gBAC9E,OAAO,CAAC,MAAM,CAAC,wBAAe,CAAC,CAAA;gBAC/B,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAClC,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5C,CAAC;QACL,CAAC;QAED,IAAG,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC7C,CAAC;YACG,KAAK,GAAG,IAAA,2BAAoB,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAClD,CAAC;QAED,MAAM,oBAAoB,GAAG,IAAA,2BAAoB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QACjE,KAAK,GAAG,IAAA,wCAAiC,EAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;QAEvE,OAAO,IAAI,eAAe,CAAC,YAAY,EAAE,aAAa,EAAE,KAAK,CAAC,CAAA;IAClE,CAAC;IArCqB,4BAAY,eAqCjC,CAAA;AACL,CAAC,EAxCgB,eAAe,+BAAf,eAAe,QAwC/B;AAED,MAAa,OAAO;IAApB;QAEY,mBAAc,GAAwB,IAAI,GAAG,CAAA;IAiBzD,CAAC;IAfU,GAAG,CAAC,IAAY,EAAE,GAAG,OAAiB;QAEzC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAElB,KAAI,MAAM,KAAK,IAAI,OAAO,EAC1B,CAAC;YACG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QACpE,CAAC;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IAEM,GAAG,CAAC,IAAY;;QAEnB,OAAO,MAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,mCAAI,IAAI,CAAA;IACrE,CAAC;CACJ;AAnBD,0BAmBC;AAGY,QAAA,oBAAoB,GAAG,IAAI,OAAO,EAAE;KAC5C,GAAG,CAAC,wBAAe,CAAC;KACpB,GAAG,CAAC,wBAAwB,EAAE,kEAAkE,EAAE,UAAU,CAAC;KAC7G,GAAG,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC;KACvC,GAAG,CAAC,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,CAAC;KACtD,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,CAAC;KACnC,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC;KACxD,GAAG,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;KACvC,GAAG,CAAC,sBAAsB,EAAE,qBAAqB,CAAC;KAClD,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC;KACnC,GAAG,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;KAC/C,GAAG,CAAC,QAAQ,EAAE,yBAAyB,EAAE,UAAU,CAAC;KACpD,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC;KACpC,GAAG,CAAC,sBAAsB,EAAE,qBAAqB,EAAE,WAAW,CAAC;KAC/D,GAAG,CAAC,gBAAgB,EAAE,eAAe,CAAC;KACtC,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC;KACpC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC;KAC5B,GAAG,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;KAC9C,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC;KAC1B,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC;KACpC,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC;KACpC,GAAG,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,cAAc,CAAC;KACvD,GAAG,CAAC,YAAY,EAAE,iBAAiB,CAAC;KACpC,GAAG,CAAC,eAAe,EAAE,WAAW,CAAC;KACjC,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK,CAAC;KAC/C,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC;KACxB,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,CAAC;KACxC,GAAG,CAAC,UAAU,CAAC;KACf,GAAG,CAAC,kBAAkB,EAAE,aAAa,CAAC;KACtC,GAAG,CAAC,SAAS,CAAC;KACd,GAAG,CAAC,cAAc,EAAE,aAAa,CAAC;KAClC,GAAG,CAAC,qBAAqB,EAAE,wBAAwB,CAAC;KACpD,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC;KAC9B,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC;KACvB,GAAG,CAAC,eAAe,EAAE,eAAe,CAAC;KACrC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC;KACzB,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC;KAC9B,GAAG,CAAC,WAAW,CAAC;KAChB,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC;KAC5B,GAAG,CAAC,oBAAoB,CAAC;KACzB,GAAG,CAAC,eAAe,EAAE,gBAAgB,EAAE,yBAAyB,CAAC;KACjE,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC;KAC5B,GAAG,CAAC,cAAc,CAAC;KACnB,GAAG,CAAC,mBAAmB,CAAC;KACxB,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC;KACjC,GAAG,CAAC,gBAAgB,CAAC;KACrB,GAAG,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;KACvC,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,mBAAmB,CAAC;KAClD,GAAG,CAAC,YAAY,CAAC;KACjB,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC;KAC3B,GAAG,CAAC,gBAAgB,CAAC;KACrB,GAAG,CAAC,SAAS,EAAE,wBAAwB,CAAC;KACxC,GAAG,CAAC,YAAY,EAAE,aAAa,CAAC;KAChC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC;KAC9B,GAAG,CAAC,SAAS,CAAC;KACd,GAAG,CAAC,gBAAgB,EAAE,eAAe,CAAC;KACtC,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC;KAChC,GAAG,CAAC,oBAAoB,CAAC;KACzB,GAAG,CAAC,gBAAgB,CAAC;KACrB,GAAG,CAAC,UAAU,EAAE,aAAa,CAAC;KAC9B,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC;KAC5B,GAAG,CAAC,QAAQ,CAAC;KACb,GAAG,CAAC,iBAAiB,EAAE,cAAc,CAAC;KACtC,GAAG,CAAC,eAAe,EAAE,gBAAgB,CAAC;KACtC,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC;KACjC,GAAG,CAAC,UAAU,EAAE,gBAAgB,CAAC;KACjC,GAAG,CAAC,OAAO,EAAE,kBAAkB,CAAC;KAChC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC;KAC9B,GAAG,CAAC,UAAU,EAAE,qBAAqB,CAAC;KACtC,GAAG,CAAC,UAAU,EAAE,aAAa,CAAC;KAC9B,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC;KAC1B,GAAG,CAAC,UAAU,CAAC;KACf,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC;KAC3B,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,oBAAoB,CAAC;KACtD,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC;KAC/C,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC;KAC7B,GAAG,CAAC,eAAe,EAAE,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,qBAAqB,CAAC,CAAA;AAE1H,IAAiB,OAAO,CAqHvB;AArHD,WAAiB,OAAO;IAEpB,IAAY,qBAQX;IARD,WAAY,qBAAqB;QAE7B,wCAAe,CAAA;QACf,+CAAsB,CAAA;QACtB,qDAA4B,CAAA;QAC5B,qEAA4C,CAAA;QAC5C,+CAAsB,CAAA;QACtB,+DAAsC,CAAA;IAC1C,CAAC,EARW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAQhC;IAED,IAAY,qBAQX;IARD,WAAY,qBAAqB;QAE7B,wCAAe,CAAA;QACf,+CAAsB,CAAA;QACtB,8CAAqB,CAAA;QACrB,qDAA4B,CAAA;QAC5B,mDAA0B,CAAA;QAC1B,+CAAsB,CAAA;IAC1B,CAAC,EARW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAQhC;IAID,SAAgB,UAAU,CAAC,KAAa;QAEpC,QAAO,KAAK,EACZ,CAAC;YACG,KAAK,OAAO,CAAC;YACb,KAAK,IAAI;gBACL,OAAO,qBAAqB,CAAC,KAAK,CAAA;YACtC,KAAK,WAAW,CAAC;YACjB,KAAK,KAAK,CAAC;YACX,KAAK,IAAI;gBACL,OAAO,qBAAqB,CAAC,QAAQ,CAAA;YACzC,KAAK,cAAc,CAAC;YACpB,KAAK,IAAI,CAAC;YACV,KAAK,GAAG;gBACJ,OAAO,qBAAqB,CAAC,WAAW,CAAA;YAC5C,KAAK,uBAAuB,CAAC;YAC7B,KAAK,KAAK,CAAC;YACX,KAAK,IAAI;gBACL,OAAO,qBAAqB,CAAC,kBAAkB,CAAA;YACnD,KAAK,WAAW,CAAC;YACjB,KAAK,IAAI,CAAC;YACV,KAAK,GAAG;gBACJ,OAAO,qBAAqB,CAAC,QAAQ,CAAA;YACzC,KAAK,oBAAoB,CAAC;YAC1B,KAAK,KAAK,CAAC;YACX,KAAK,IAAI;gBACL,OAAO,qBAAqB,CAAC,eAAe,CAAA;YAChD,KAAK,UAAU,CAAC;YAChB,KAAK,IAAI;gBACL,OAAO,qBAAqB,CAAC,QAAQ,CAAA;YACzC,KAAK,aAAa,CAAC;YACnB,KAAK,QAAQ;gBACT,OAAO,qBAAqB,CAAC,UAAU,CAAA;YAC3C,KAAK,WAAW,CAAC;YACjB,KAAK,MAAM;gBACP,OAAO,qBAAqB,CAAC,QAAQ,CAAA;YACzC,KAAK,cAAc,CAAC;YACpB,KAAK,QAAQ;gBACT,OAAO,qBAAqB,CAAC,WAAW,CAAA;YAC5C;gBACI,MAAM,IAAI,KAAK,CAAC,qBAAqB,KAAK,EAAE,CAAC,CAAA;QACrD,CAAC;IACL,CAAC;IA1Ce,kBAAU,aA0CzB,CAAA;IAED,SAAgB,OAAO,CAAC,KAAsB,EAAE,QAAkB;QAE9D,IAAG,IAAA,eAAQ,EAAC,KAAK,CAAC,EAClB,CAAC;YACG,OAAO,MAAM,CAAC,KAAK,EAAE,QAAiC,CAAC,CAAA;QAC3D,CAAC;aAED,CAAC;YACG,OAAO,MAAM,CAAC,KAAe,EAAE,QAAiC,CAAC,CAAA;QACrE,CAAC;IACL,CAAC;IAVe,eAAO,UAUtB,CAAA;IAED,SAAgB,MAAM,CAAC,KAAa,EAAE,QAA+B;QAEjE,QAAO,QAAQ,EACf,CAAC;YACG,KAAK,qBAAqB,CAAC,KAAK;gBAC5B,OAAO,KAAK,IAAI,KAAK,CAAA;YACzB,KAAK,qBAAqB,CAAC,QAAQ;gBAC/B,OAAO,KAAK,IAAI,KAAK,CAAA;YACzB,KAAK,qBAAqB,CAAC,WAAW;gBAClC,OAAO,KAAK,GAAG,KAAK,CAAA;YACxB,KAAK,qBAAqB,CAAC,kBAAkB;gBACzC,OAAO,KAAK,IAAI,KAAK,CAAA;YACzB,KAAK,qBAAqB,CAAC,QAAQ;gBAC/B,OAAO,KAAK,GAAG,KAAK,CAAA;YACxB,KAAK,qBAAqB,CAAC,eAAe;gBACtC,OAAO,KAAK,IAAI,KAAK,CAAA;QAC7B,CAAC;IACL,CAAC;IAjBe,cAAM,SAiBrB,CAAA;IAED,SAAgB,MAAM,CAAC,KAAa,EAAE,QAA+B;QAEjE,QAAO,QAAQ,EACf,CAAC;YACG,KAAK,qBAAqB,CAAC,KAAK;gBAC5B,OAAO,KAAK,IAAI,KAAK,CAAA;YACzB,KAAK,qBAAqB,CAAC,QAAQ;gBAC/B,OAAO,KAAK,IAAI,KAAK,CAAA;YACzB,KAAK,qBAAqB,CAAC,QAAQ;gBAC/B,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YAChC,KAAK,qBAAqB,CAAC,UAAU;gBACjC,OAAO,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;YAClC,KAAK,qBAAqB,CAAC,QAAQ;gBAC/B,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YAChC,KAAK,qBAAqB,CAAC,WAAW;gBAClC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC;IACL,CAAC;IAjBe,cAAM,SAiBrB,CAAA;AACL,CAAC,EArHgB,OAAO,uBAAP,OAAO,QAqHvB;AAED,MAAa,YAAY;IAIrB,YAA4B,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;QAFnC,UAAK,GAAQ,EAAE,CAAA;QAInB,IAAI,OAAO,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;IACpE,CAAC;IAED,OAAO,CAAC,IAAO;QAEX,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrB,IAAI,CAAC,iBAAiB,EAAE,CAAA;IAC5B,CAAC;IAED,SAAS,CAAC,IAAO;QAEb,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACxB,IAAI,CAAC,gBAAgB,EAAE,CAAA;IAC3B,CAAC;IAED,MAAM;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;IAC3B,CAAC;IAED,QAAQ;QAEJ,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IAC7B,CAAC;IAED,SAAS;QAEL,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACxB,CAAC;IAED,OAAO;QAEH,OAAO,IAAA,cAAO,EAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;IAED,IAAI,IAAI;QAEN,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;IAC1B,CAAC;IAED,OAAO;QAEL,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM;QAEJ,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAA;IAC1C,CAAC;IAED,KAAK;QAED,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;IACnB,CAAC;IAED,OAAO;QAEL,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC;IAED,IAAI,KAAK;QAEL,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;IAEO,iBAAiB;QAErB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,EACvC,CAAC;YACG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;QACtB,CAAC;IACL,CAAC;IAEO,gBAAgB;QAEpB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,EACvC,CAAC;YACG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QACpB,CAAC;IACL,CAAC;CACJ;AAtFD,oCAsFC;AAGD,MAAa,KAAK;IAMd;QAJQ,aAAQ,GAAW,CAAC,CAAA;QACpB,qBAAgB,GAAW,CAAC,CAAA;QAC5B,WAAM,GAAG,CAAC,CAAA;QAmJX,qBAAgB,GAAe,WAAI,CAAA;QA/ItC,IAAI,CAAC,KAAK,EAAE,CAAA;IAChB,CAAC;IAEM,KAAK;QAER,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC1B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAA;QACrC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA;IACnB,CAAC;IAED,IAAI,OAAO;QAEP,OAAO,IAAI,CAAC,QAAQ,CAAA;IACxB,CAAC;IAED,IAAI,SAAS;QAET,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAA;IACrC,CAAC;IAED,IAAI,QAAQ;QAER,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;IAChC,CAAC;IAEM,SAAS,CAAC,cAAsB,CAAC,EAAE,mBAA4B,KAAK;QAEvE,IAAI,CAAC,MAAM,IAAI,WAAW,CAAA;QAC1B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAElC,IAAG,gBAAgB,EACnB,CAAC;YACG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAC3B,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;IAED,IAAI,eAAe;QAEf,OAAO,IAAI,CAAC,gBAAgB,CAAA;IAChC,CAAC;IAED,IAAI,kBAAkB;QAElB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAA;IAC7C,CAAC;IAED,IAAI,iBAAiB;QAEjB,OAAO,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAA;IACzC,CAAC;IAED,IAAI,KAAK;QAEL,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;IAGD,IAAI,cAAc;QAEd,OAAO,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAA;IACtC,CAAC;IAED,IAAI,oBAAoB;QAEpB,OAAO,GAAG,IAAA,kBAAW,EAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAA;IAClD,CAAC;IAEM,UAAU,CAAC,SAAiB;QAE/B,OAAO,SAAS,IAAI,IAAI,CAAC,MAAM,CAAA;IACnC,CAAC;IAEM,qBAAqB,CAAC,SAAiB;QAE1C,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,cAAc,CAAA;IAC1D,CAAC;IAEM,2BAA2B,CAAC,SAAiB;QAEhD,OAAO,IAAA,cAAO,EAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAA;IACzD,CAAC;IAEM,wBAAwB,CAAC,SAAiB;QAE7C,IAAG,IAAI,CAAC,MAAM,IAAI,CAAC,EACnB,CAAC;YACG,OAAO,MAAM,IAAA,kBAAW,EAAC,SAAS,CAAC,WAAW,CAAA;QAClD,CAAC;QAED,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,GAAG,CAAA;QAC/C,OAAO,IAAI,IAAA,kBAAW,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAA,kBAAW,EAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;IAC9F,CAAC;IAEM,kBAAkB,CAAC,SAAiB;QAEvC,IAAG,IAAI,CAAC,MAAM,IAAI,CAAC,EACnB,CAAC;YACG,OAAO,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAA;QACnD,CAAC;QAED,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,2BAA2B,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;IACxI,CAAC;IAEM,mBAAmB,CAEtB,SAAiB,EACjB,gBAAyC,EAAE,EAC3C,WAAuB,WAAI,EAC3B,aAAqB,GAAG,EACxB,oBAA4B,GAAG;QAG/B,IAAI,CAAC,KAAK,EAAE,CAAA;QAEZ,MAAM,IAAI,GAAG,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAA;QACpH,IAAI,aAAa,GAAG,CAAC,CAAA;QAErB,IAAI,QAAQ,GAAG,KAAK,CAAA;QAEpB,IAAA,wBAAiB,EAAC,UAAU,EAAE,GAAG,EAAE;YAE/B,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;YAE3C,OAAO,QAAQ,CAAA;QACnB,CAAC,CAAC,CAAA;QAEF,IAAA,uBAAgB,EAAC,CAAC,EAAE,GAAG,EAAE;YAErB,EAAE,aAAa,CAAA;YAEf,IAAG,SAAS,IAAI,aAAa,EAC7B,CAAC;gBACG,QAAQ,GAAG,IAAI,CAAA;YACnB,CAAC;YAED,OAAO,QAAQ,CAAA;QACnB,CAAC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACf,CAAC;IAIM,wBAAwB,CAE3B,gBAAyC,EACzC,gBAAyC,EAAE,EAC3C,WAAuB,WAAI,EAC3B,YAAqB,IAAI,EACzB,aAAqB,GAAG,EACxB,oBAA4B,IAAI;QAGhC,MAAM,mBAAmB,GAAG,IAAA,YAAG,EAAC,iBAAiB,EAAE,UAAU,CAAC,CAAA;QAC9D,MAAM,iBAAiB,GAAG,IAAA,iBAAQ,EAAC,gBAAgB,CAAC,CAAA;QACpD,MAAM,cAAc,GAAG,IAAA,eAAQ,EAAC,aAAa,CAAC,CAAA;QAE9C,IAAI,CAAC,gBAAgB,GAAG,GAAG,EAAE;YAEzB,MAAM,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAA;YAE3E,MAAM,QAAQ,GAAG,SAAS,IAAI,IAAI,CAAC,MAAM,CAAA;YACzC,IAAG,QAAQ,EACX,CAAC;gBACG,aAAa,CAAC,IAAI,CAAC,CAAA;YACvB,CAAC;YAED,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;YAE/D,IAAI,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAA;YAEpG,IAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EACpB,CAAC;gBACG,IAAI,IAAI,MAAM,MAAM,EAAE,CAAA;YAC1B,CAAC;YAED,MAAM,YAAY,GAAG,IAAA,cAAK,EAAC,IAAI,CAAC,GAAG,EAAE,GAAG,mBAAmB,CAAC,CAAA;YAE5D,IAAG,iBAAiB,GAAG,CAAC,EACxB,CAAC;gBACG,IAAI,GAAG,IAAA,wBAAiB,EAAC,IAAI,EAAE,YAAY,CAAC,CAAA;YAChD,CAAC;YAED,IAAA,8BAAuB,EAAC,IAAI,CAAC,CAAA;YAE7B,IAAG,QAAQ,EACX,CAAC;gBACG,OAAO,CAAC,GAAG,CAAC,IAAA,wBAAiB,EAAC,cAAc,EAAE,YAAY,CAAC,CAAC,CAAA;gBAC5D,IAAI,CAAC,gBAAgB,GAAG,WAAI,CAAA;gBAC5B,QAAQ,EAAE,CAAA;YACd,CAAC;QACL,CAAC,CAAA;QAED,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE;YAE1B,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAC3B,CAAC,EAAE,UAAU,CAAC,CAAA;QAEd,OAAO,IAAI,CAAA;IACf,CAAC;IAEM,gCAAgC,CAAC,WAAyB,EAAE,aAAqB,GAAG;QAEvF,OAAO,WAAW,CAAC,GAAG,EAAE;YAEpB,IAAA,8BAAuB,EAAC,WAAW,EAAE,CAAC,CAAA;QAC1C,CAAC,EAAE,UAAU,CAAC,CAAA;IAClB,CAAC;CACJ;AA1ND,sBA0NC;AAED,wCAAwC;AACxC,IAAI;AACJ,uDAAuD;AAEvD,qEAAqE;AACrE,QAAQ;AACR,kBAAkB;AAClB,oEAAoE;AACpE,QAAQ;AAER,8DAA8D;AAC9D,QAAQ;AAER,QAAQ;AACR,IAAI;AAEJ,MAAa,cAAc;IAKvB,YAAY,SAA2B,oBAAW;QAH1C,YAAO,GAAW,MAAM,CAAC,SAAS,CAAA;QAClC,aAAQ,GAAW,MAAM,CAAC,SAAS,CAAA;QAIvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAC5B,CAAC;IAEM,WAAW,CAAC,MAAwB;QAEvC,KAAK,MAAM,IAAI,IAAI,MAAM,EACzB,CAAC;YACG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACrB,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,KAAa;QAEvB,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,EACxB,CAAC;YACG,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;QACxB,CAAC;aACI,IAAI,IAAI,CAAC,QAAQ,GAAG,KAAK,EAC9B,CAAC;YACG,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;QACzB,CAAC;IACL,CAAC;IAED,IAAI,MAAM;QAEN,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAED,IAAI,OAAO;QAEP,OAAO,IAAI,CAAC,QAAQ,CAAA;IACxB,CAAC;IAEM,kBAAkB,CAAC,QAAiC;QAEvD,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,EAClD,CAAC;YACG,QAAQ,CAAC,CAAC,CAAC,CAAA;QACf,CAAC;IACL,CAAC;IAEM,mBAAmB,CAAC,QAAiC;QAExD,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,EAClD,CAAC;YACG,QAAQ,CAAC,CAAC,CAAC,CAAA;QACf,CAAC;IACL,CAAC;IAEM,OAAO,CAAC,WAAoB,EAAE,QAAiC;QAElE,IAAI,WAAW,EACf,CAAC;YACG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;QACrC,CAAC;aAED,CAAC;YACG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAA;QACtC,CAAC;IACL,CAAC;IAED,IAAI,GAAG;QAEH,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAA;IACvC,CAAC;IAEM,cAAc;QAEjB,OAAO,sBAAY,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC1D,CAAC;IAEM,QAAQ;QAEX,OAAO,GAAG,IAAI,CAAC,OAAO,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;IAC/C,CAAC;CACJ;AAlFD,wCAkFC;AAED,MAAa,eAAgB,SAAQ,cAAc;IAM/C,YAAY,SAA2B,oBAAW;QAE9C,KAAK,CAAC,oBAAW,CAAC,CAAA;QANd,SAAI,GAAW,CAAC,CAAA;QAOpB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;QACf,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAA;QACpB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAC5B,CAAC;IAEM,MAAM,CAAC,KAAa;QAEvB,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACnB,IAAA,mBAAY,EAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACtB,IAAI,CAAC,IAAI,IAAI,KAAK,CAAA;IACtB,CAAC;IAED,IAAI,OAAO;QAEP,OAAO,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAA;IACjC,CAAC;IAED,IAAI,GAAG;QAEH,OAAO,IAAI,CAAC,IAAI,CAAA;IACpB,CAAC;IAED,IAAI,KAAK;QAEL,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;IAC5B,CAAC;IAEM,WAAW,CAAC,YAAqB,KAAK;QAEzC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IACvE,CAAC;IAED,IAAI,MAAM;QAEN,IAAG,IAAI,CAAC,KAAK,IAAI,CAAC,EAClB,CAAC;YACG,OAAO,CAAC,CAAA;QACZ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;QAEzC,IAAG,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,EACtB,CAAC;YACG,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAA;QACpD,CAAC;aAED,CAAC;YACG,OAAO,MAAM,CAAC,MAAM,CAAC,CAAA;QACzB,CAAC;IACL,CAAC;IAEM,sBAAsB,CAAC,YAAqB,KAAK;QAEpD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAChF,CAAC;IAEe,QAAQ;QAEpB,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,MAAM,IAAI,CAAC,OAAO,aAAa,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,IAAI,eAAe,IAAA,kBAAW,EAAC,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,MAAM,GAAG,CAAA;QAC3J,KAAI,MAAM,GAAG,IAAI,IAAI,CAAC,sBAAsB,EAAE,EAC9C,CAAC;YACG,IAAI,IAAI,OAAO,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAA;QAC9C,CAAC;QACD,OAAO,IAAI,CAAA;IACf,CAAC;CACJ;AA5ED,0CA4EC;AAED,MAAa,QAAQ;IAKjB,YAAY,IAAO;QAHX,YAAO,GAAY,KAAK,CAAA;QAK5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;IACrB,CAAC;IAED,IAAI,IAAI;QAEJ,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;IAED,IAAI,IAAI,CAAC,IAAO;QAEZ,IAAG,IAAI,CAAC,OAAO,EACf,CAAC;YACG,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QACzD,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;IACrB,CAAC;IAED,IAAI,MAAM;QAEN,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAED,IAAI,MAAM,CAAC,MAAe;QAEtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACzB,CAAC;IAED,GAAG,CAAC,IAAO;QAEP,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IACpB,CAAC;IAED,GAAG;QAEC,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;IAED,IAAI;QAEA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACvB,CAAC;IAED,MAAM;QAEF,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;IACxB,CAAC;IAED,QAAQ;QAEJ,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;IAC1B,CAAC;CACJ;AA1DD,4BA0DC;AAED,MAAa,MAAM;IAQf,YAEoB,aAAqB,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc;QAAnE,eAAU,GAAV,UAAU,CAAyD;QAR/E,UAAK,GAAY,KAAK,CAAA;QAIb,YAAO,GAA8C,EAAE,CAAA;QAOpE,IAAI,CAAC,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAC7C,IAAI,CAAC,IAAI,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;IACzC,CAAC;IAED,IAAI,MAAM;QAEN,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;IAED,cAAc;QAEV,IAAG,CAAC,IAAI,CAAC,KAAK,EACd,CAAC;YACG,MAAM,YAAY,IAAI,uBAAuB,CAAA;QACjD,CAAC;IACL,CAAC;IAED,WAAW,CAAC,QAAgB,GAAG,IAAI,0BAA0B;QAEzD,IAAG,IAAI,CAAC,KAAK,EACb,CAAC;YACG,MAAM,KAAK,CAAA;QACf,CAAC;IACL,CAAC;IAED,MAAM,CAAC,GAAW,EAAE,KAAgC;QAEhD,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,uBAAuB,GAAG,iBAAiB,KAAK,wBAAwB,CAAC,CAAA;QAE1G,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACvC,IAAG,aAAa,IAAI,IAAI,EACxB,CAAC;YACG,MAAM,GAAG,IAAI,YAAY,GAAG,sBAAsB,aAAa,EAAE,CAAA;QACrE,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QACzB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,GAAG,CAAC,GAAW;QAEX,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAC5B,CAAC;IAED,SAAS,CAAC,GAAW;QAEjB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAW,CAAA;IAClC,CAAC;IAED,SAAS,CAAC,GAAW;QAEjB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAW,CAAA;IAClC,CAAC;IAED,OAAO,CAAC,GAAW;QAEf,OAAO,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;IAED,EAAE,CAAC,GAAW;QAEV,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAY,CAAA;IACnC,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,KAAgC;QAE7C,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAChC,CAAC;IAEO,IAAI,CAAC,GAAW,EAAE,KAAgC;QAEtD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAEtC,IAAG,YAAY,IAAI,IAAI,EACvB,CAAC;YACG,IAAG,OAAM,CAAC,KAAK,CAAC,KAAK,OAAM,CAAC,YAAY,CAAC,EACzC,CAAC;gBACG,MAAM,GAAG,IAAI,iCAAiC,GAAG,cAAc,OAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,OAAM,CAAC,KAAK,CAAC,EAAE,CAAA;YACpH,CAAC;QACL,CAAC;aAED,CAAC;YACG,MAAM,GAAG,IAAI,UAAU,GAAG,kBAAkB,CAAA;QAChD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QACzB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,IAAI;QAEA,IAAI,CAAC,WAAW,EAAE,CAAA;QAElB,IAAG,IAAA,eAAU,EAAC,IAAI,CAAC,UAAU,CAAC,EAC9B,CAAC;YACG,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAEhD,KAAI,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EACzD,CAAC;gBACG,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;gBACtC,IAAG,YAAY,IAAI,IAAI,EACvB,CAAC;oBACG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,+BAA+B,GAAG,GAAG,CAAC,CAAA;gBAC9D,CAAC;gBAED,IAAG,OAAM,CAAC,KAAK,CAAC,KAAK,OAAM,CAAC,YAAY,CAAC,EACzC,CAAC;oBACG,MAAM,GAAG,IAAI,iCAAiC,GAAG,cAAc,OAAM,CAAC,YAAY,CAAC,SAAS,OAAM,CAAC,KAAK,CAAC,EAAE,CAAA;gBAC/G,CAAC;gBAED,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAY,CAAC,CAAA;YAChC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAA;QAEX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QACjB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,IAAI;QAEA,MAAM,UAAU,GAAG,IAAA,gBAAS,EAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC1C,IAAA,kBAAa,EAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;QAC1C,OAAO,IAAI,CAAA;IACf,CAAC;IAED,QAAQ;QAEJ,IAAI,MAAM,GAAG,WAAW,IAAI,CAAC,IAAI,KAAK,CAAA;QACtC,KAAI,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EACtD,CAAC;YACG,MAAM,IAAI,IAAI,GAAG,OAAO,KAAK,KAAK,CAAA;QACtC,CAAC;QACD,OAAO,MAAM,CAAA;IACjB,CAAC;CACJ;AAvJD,wBAuJC;AAED,2BAA2B;AAC3B,MAAa,WAAW;IAKpB;QAEI,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,EAAa,CAAA;QAChC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAA;IACzB,CAAC;IAED,GAAG,CAAC,IAAO,EAAE,SAAiB,CAAC;QAE3B,IAAG,MAAM,IAAI,CAAC,EACd,CAAC;YACG,MAAM,GAAG,IAAI,iBAAiB,IAAI,gBAAgB,CAAA;QACtD,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC3B,IAAI,CAAC,YAAY,IAAI,MAAM,CAAA;QAC3B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,GAAG;QAEC,IAAG,IAAI,CAAC,KAAK,EACb,CAAC;YACG,MAAM,GAAG,IAAI,iCAAiC,CAAA;QAClD,CAAC;QACD,MAAM,IAAI,GAAG,IAAA,2BAAoB,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;QAE/D,IAAG,IAAI,IAAI,IAAI,EACf,CAAC;YACG,MAAM,GAAG,IAAI,SAAS,IAAI,OAAO,CAAA;QACrC,CAAC;QAED,OAAO,IAAI,CAAA;IACf,CAAC;IAED,IAAI,KAAK;QAEL,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,CAAA;IACzB,CAAC;IAED,IAAI,QAAQ;QAER,OAAO,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;IACxB,CAAC;IAED,IAAI,IAAI;QAEJ,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;IACzB,CAAC;CACJ;AApDD,kCAoDC;AAED,WAAiB,WAAW;IAExB,SAAgB,EAAE,CAAI,KAAc;QAEhC,MAAM,WAAW,GAAG,IAAI,WAAc,CAAA;QAEtC,IAAG,IAAA,gBAAO,EAAC,KAAK,CAAC,EACjB,CAAC;YACG,KAAI,MAAM,IAAI,IAAI,KAAK,EACvB,CAAC;gBACG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACzB,CAAC;QACL,CAAC;aAED,CAAC;YACG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC;QAED,OAAO,WAAW,CAAA;IACtB,CAAC;IAjBe,cAAE,KAiBjB,CAAA;AACL,CAAC,EApBgB,WAAW,2BAAX,WAAW,QAoB3B;AAkBD,MAAa,QAAQ;IAOjB,YAAY,IAAiB;;QAEzB,IAAG,IAAI,IAAI,IAAI,EACf,CAAC;YACG,IAAI,CAAC,SAAS,GAAG,IAAI,WAAW,CAAA;YAChC,MAAM,GAAG,IAAI,oCAAoC,CAAA;QACrD,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;QAC1D,IAAI,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,CAAC,CAAA;QAC9B,IAAI,CAAC,qBAAqB,GAAG,MAAA,IAAI,CAAC,qBAAqB,mCAAI,KAAK,CAAA;QAEhE,IAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,EAC7B,CAAC;YACG,IAAI,CAAC,SAAS,GAAG,IAAI,WAAW,CAAA;QACpC,CAAC;aAED,CAAC;YACG,IAAG,IAAI,CAAC,QAAQ,YAAY,WAAW,EACvC,CAAC;gBACG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAA;YAClC,CAAC;iBAED,CAAC;gBACG,IAAI,CAAC,SAAS,GAAG,IAAI,WAAW,CAAA;gBAEhC,IAAG,IAAA,gBAAO,EAAC,IAAI,CAAC,QAAQ,CAAC,EACzB,CAAC;oBACG,KAAI,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAChC,CAAC;wBACG,MAAM,WAAW,GAAG,MAAC,KAAa,CAAC,MAAM,mCAAI,CAAC,CAAA;wBAC9C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAA;oBACvD,CAAC;gBACL,CAAC;qBAED,CAAC;oBACG,MAAM,WAAW,GAAG,MAAC,IAAI,CAAC,QAAgB,CAAC,MAAM,mCAAI,CAAC,CAAA;oBACtD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAA;gBAC/D,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAI,WAAW;QAEX,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAA;IAClC,CAAC;IAED,cAAc;QAEV,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAA;IAC/B,CAAC;IAED,QAAQ,CAAC,SAA4B,kBAAS,EAAE,YAAoB,GAAG,EAAE,OAAe,EAAE;QAEtF,IAAG,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,EAC7B,CAAC;YACG,IAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EACvB,CAAC;gBACG,wBAAwB;gBACxB,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,wBAAe,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;oBAE7F,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;oBAEpC,IAAG,UAAU,IAAI,IAAI,EACrB,CAAC;wBACG,OAAO,KAAK,CAAA;oBAChB,CAAC;oBAED,IAAG,UAAU,CAAC,KAAK,EACnB,CAAC;wBACG,OAAO,KAAK,CAAA;oBAChB,CAAC;oBAED,MAAM,aAAa,GAAG,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAA;oBACnD,OAAO,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;gBACpD,CAAC,CAAC,EAAE,CAAA;gBACJ,YAAY;gBACZ,qBAAqB;YACzB,CAAC;QACL,CAAC;aAED,CAAC;YACG,IAAG,CAAC,IAAI,CAAC,qBAAqB,EAC9B,CAAC;gBACG,OAAO,IAAI,CAAA;YACf,CAAC;QACL,CAAC;QAED,IAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAC1B,CAAC;YACG,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;YACnC,OAAO,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;QAClD,CAAC;QAED,OAAO,IAAI,CAAA;IACf,CAAC;IAED,QAAQ;QAEJ,OAAO,cAAc,IAAI,CAAC,IAAI,eAAe,IAAI,CAAC,MAAM,gBAAgB,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;IACjG,CAAC;CACJ;AA5GD,4BA4GC;AAED,WAAiB,QAAQ;IAErB,SAAgB,EAAE,CAAC,IAAmB;QAElC,IAAG,IAAA,eAAQ,EAAC,IAAI,CAAC,EACjB,CAAC;YACG,OAAO,QAAQ,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACtC,CAAC;aACI,IAAG,IAAI,YAAY,QAAQ,EAChC,CAAC;YACG,OAAO,IAAI,CAAA;QACf,CAAC;aAED,CAAC;YACG,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC;IACL,CAAC;IAde,WAAE,KAcjB,CAAA;AACL,CAAC,EAjBgB,QAAQ,wBAAR,QAAQ,QAiBxB;AACD,YAAY;AACZ,qBAAqB;AAErB,MAAa,IAAI;IAEb,YAAmB,IAAO,EAAS,KAAQ;QAAxB,SAAI,GAAJ,IAAI,CAAG;QAAS,UAAK,GAAL,KAAK,CAAG;IAG3C,CAAC;IAEM,MAAM,CAAC,EAAE,CAAC,CAAM,EAAE,CAAM;QAE3B,OAAO,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACzB,CAAC;IAEM,IAAI;QAEP,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAEM,OAAO;QAEV,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAClC,CAAC;IAEM,MAAM,CAAC,KAAiB;QAE3B,OAAO,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAA;IACjE,CAAC;IAEM,QAAQ;QAEX,OAAO,IAAI,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,KAAK,GAAG,CAAA;IAC3C,CAAC;CACJ;AA/BD,oBA+BC;AAED,MAAa,KAAK;IAId,YAA4B,KAAe;QAAf,UAAK,GAAL,KAAK,CAAU;QAEvC,IAAI,CAAC,OAAO,GAAG,KAAK,IAAI,IAAI,CAAA;IAChC,CAAC;IAED,SAAS,CAAC,KAAc;QAEpB,IAAG,IAAI,CAAC,OAAO,EACf,CAAC;YACG,OAAO,IAAI,CAAC,KAAU,CAAA;QAC1B,CAAC;QACD,OAAO,KAAK,EAAE,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,KAAQ;QAEX,IAAG,IAAI,CAAC,OAAO,EACf,CAAC;YACG,OAAO,IAAI,CAAC,KAAU,CAAA;QAC1B,CAAC;QACD,OAAO,KAAK,CAAA;IAChB,CAAC;CACJ;AA1BD,sBA0BC;AAED,WAAiB,KAAK;IAEL,WAAK,GAAe,IAAI,KAAK,CAAM,IAAI,CAAC,CAAA;IAErD,SAAgB,SAAS,CAAI,WAAgB,EAAE,KAAa;QAExD,IAAG,KAAK,IAAI,CAAC,IAAI,KAAK,GAAG,WAAW,CAAC,MAAM,EAC3C,CAAC;YACG,OAAO,IAAI,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;QACxC,CAAC;QACD,OAAO,KAAK,CAAC,KAAK,CAAA;IACtB,CAAC;IAPe,eAAS,YAOxB,CAAA;IAED,SAAgB,EAAE,CAAI,KAAe;QAEjC,IAAG,KAAK,IAAI,IAAI,EAChB,CAAC;YACG,OAAO,KAAK,CAAC,KAAK,CAAA;QACtB,CAAC;QACD,OAAO,IAAI,KAAK,CAAI,KAAK,CAAC,CAAA;IAC9B,CAAC;IAPe,QAAE,KAOjB,CAAA;AACL,CAAC,EArBgB,KAAK,qBAAL,KAAK,QAqBrB"}