maidraw 0.9.4 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/assets/themes/chunithm/best/luminousLandscape/new/manifest.json +58 -32
  2. package/assets/themes/chunithm/best/luminousLandscape/recents/manifest.json +57 -31
  3. package/assets/themes/chunithm/best/luminousPlusLandscape/new/manifest.json +57 -31
  4. package/assets/themes/chunithm/best/luminousPlusLandscape/recents/manifest.json +57 -31
  5. package/assets/themes/chunithm/best/verseLandscape/new/manifest.json +57 -31
  6. package/assets/themes/chunithm/best/verseLandscape/recents/manifest.json +57 -31
  7. package/assets/themes/chunithm/chart/jp/verse/manifest.json +73 -71
  8. package/assets/themes/maimai/best50/cn/2024Landscape/manifest.json +90 -54
  9. package/assets/themes/maimai/best50/cn/2024Portrait/manifest.json +89 -53
  10. package/assets/themes/maimai/best50/cn/2025Landscape/manifest.json +90 -54
  11. package/assets/themes/maimai/best50/cn/2025Portrait/manifest.json +89 -53
  12. package/assets/themes/maimai/best50/common/prism/plus/background.png +0 -0
  13. package/assets/themes/maimai/best50/jp/buddiesLandscape/manifest.json +89 -53
  14. package/assets/themes/maimai/best50/jp/buddiesPlusLandscape/manifest.json +89 -53
  15. package/assets/themes/maimai/best50/jp/buddiesPlusPortrait/manifest.json +89 -53
  16. package/assets/themes/maimai/best50/jp/buddiesPortrait/manifest.json +89 -53
  17. package/assets/themes/maimai/best50/jp/finaleLandscape/manifest.json +89 -53
  18. package/assets/themes/maimai/best50/jp/finalePortrait/manifest.json +89 -53
  19. package/assets/themes/maimai/best50/jp/prismLandscape/manifest.json +90 -54
  20. package/assets/themes/maimai/best50/jp/prismPlusLandscape/manifest.json +90 -54
  21. package/assets/themes/maimai/best50/jp/prismPlusPortrait/manifest.json +92 -55
  22. package/assets/themes/maimai/best50/jp/prismPortrait/manifest.json +89 -53
  23. package/assets/themes/maimai/best50/salt/2026landscape/manifest.json +89 -53
  24. package/assets/themes/maimai/chart/jp/prism/manifest.json +100 -96
  25. package/assets/themes/ongeki/jp/brightMemoryLandscape/classic/manifest.json +101 -30
  26. package/assets/themes/ongeki/jp/brightMemoryLandscape/refresh/manifest.json +78 -30
  27. package/assets/themes/ongeki/jp/refreshLandscape/classic/manifest.json +101 -2
  28. package/assets/themes/ongeki/jp/refreshLandscape/refresh/manifest.json +78 -30
  29. package/dist/chu/index.d.ts +14 -4
  30. package/dist/chu/index.js +16 -4
  31. package/dist/chu/index.js.map +1 -1
  32. package/dist/chu/lib/{index.d.ts → adapter/index.d.ts} +1 -1
  33. package/dist/chu/lib/{index.js → adapter/index.js} +1 -1
  34. package/dist/chu/lib/adapter/index.js.map +1 -0
  35. package/dist/chu/lib/{kamaiTachi → adapter/kamaiTachi}/index.d.ts +1 -1
  36. package/dist/chu/lib/{kamaiTachi → adapter/kamaiTachi}/index.js +10 -10
  37. package/dist/chu/lib/adapter/kamaiTachi/index.js.map +1 -0
  38. package/dist/chu/lib/{lxns → adapter/lxns}/index.d.ts +1 -1
  39. package/dist/chu/lib/{lxns → adapter/lxns}/index.js +4 -4
  40. package/dist/chu/lib/adapter/lxns/index.js.map +1 -0
  41. package/dist/chu/{chart → lib}/database.d.ts +3 -3
  42. package/dist/chu/{chart → lib}/database.js +2 -2
  43. package/dist/chu/lib/database.js.map +1 -0
  44. package/dist/chu/lib/util.d.ts +149 -0
  45. package/dist/chu/lib/util.js +270 -0
  46. package/dist/chu/lib/util.js.map +1 -0
  47. package/dist/chu/painter/best50/index.d.ts +120 -0
  48. package/dist/chu/painter/best50/index.js +158 -0
  49. package/dist/chu/painter/best50/index.js.map +1 -0
  50. package/dist/chu/painter/chart/index.d.ts +170 -0
  51. package/dist/chu/painter/chart/index.js +116 -0
  52. package/dist/chu/painter/chart/index.js.map +1 -0
  53. package/dist/chu/painter/index.d.ts +194 -0
  54. package/dist/chu/painter/index.js +1105 -0
  55. package/dist/chu/painter/index.js.map +1 -0
  56. package/dist/geki/index.d.ts +10 -4
  57. package/dist/geki/index.js +12 -4
  58. package/dist/geki/index.js.map +1 -1
  59. package/dist/geki/lib/adapter/index.js.map +1 -0
  60. package/dist/geki/lib/adapter/kamaiTachi/index.js.map +1 -0
  61. package/dist/geki/{chart → lib}/database.d.ts +1 -1
  62. package/dist/geki/{chart → lib}/database.js +2 -2
  63. package/dist/geki/lib/database.js.map +1 -0
  64. package/dist/geki/painter/best50/index.d.ts +122 -0
  65. package/dist/geki/painter/best50/index.js +197 -0
  66. package/dist/geki/painter/best50/index.js.map +1 -0
  67. package/dist/geki/painter/index.d.ts +88 -0
  68. package/dist/geki/painter/index.js +448 -0
  69. package/dist/geki/painter/index.js.map +1 -0
  70. package/dist/lib/cache.d.ts +1 -0
  71. package/dist/lib/cache.js +6 -1
  72. package/dist/lib/cache.js.map +1 -1
  73. package/dist/lib/painter.d.ts +100 -0
  74. package/dist/lib/painter.js +216 -0
  75. package/dist/lib/painter.js.map +1 -0
  76. package/dist/lib/util.d.ts +6 -282
  77. package/dist/lib/util.js +50 -540
  78. package/dist/lib/util.js.map +1 -1
  79. package/dist/mai/index.d.ts +22 -6
  80. package/dist/mai/index.js +24 -6
  81. package/dist/mai/index.js.map +1 -1
  82. package/dist/mai/lib/{divingFish → adapter/divingFish}/index.d.ts +6 -6
  83. package/dist/mai/lib/{divingFish → adapter/divingFish}/index.js +29 -30
  84. package/dist/mai/lib/adapter/divingFish/index.js.map +1 -0
  85. package/dist/mai/lib/{index.d.ts → adapter/index.d.ts} +11 -11
  86. package/dist/mai/lib/{index.js → adapter/index.js} +2 -2
  87. package/dist/{geki/bests/lib → mai/lib/adapter}/index.js.map +1 -1
  88. package/dist/mai/lib/{kamaiTachi → adapter/kamaiTachi}/index.d.ts +84 -42
  89. package/dist/mai/lib/{kamaiTachi → adapter/kamaiTachi}/index.js +70 -62
  90. package/dist/mai/lib/adapter/kamaiTachi/index.js.map +1 -0
  91. package/dist/mai/lib/{lxns → adapter/lxns}/index.d.ts +12 -12
  92. package/dist/mai/lib/{lxns → adapter/lxns}/index.js +29 -30
  93. package/dist/mai/lib/adapter/lxns/index.js.map +1 -0
  94. package/dist/mai/lib/{maishift → adapter/maishift}/index.d.ts +4 -4
  95. package/dist/mai/lib/{maishift → adapter/maishift}/index.js +20 -20
  96. package/dist/mai/lib/adapter/maishift/index.js.map +1 -0
  97. package/dist/mai/{chart → lib}/database.d.ts +3 -3
  98. package/dist/mai/{chart → lib}/database.js +2 -2
  99. package/dist/mai/lib/database.js.map +1 -0
  100. package/dist/mai/lib/util.d.ts +134 -0
  101. package/dist/mai/lib/util.js +264 -0
  102. package/dist/mai/lib/util.js.map +1 -0
  103. package/dist/mai/painter/best50/index.d.ts +140 -0
  104. package/dist/mai/painter/best50/index.js +176 -0
  105. package/dist/mai/painter/best50/index.js.map +1 -0
  106. package/dist/mai/painter/chart/index.d.ts +195 -0
  107. package/dist/mai/painter/chart/index.js +115 -0
  108. package/dist/mai/painter/chart/index.js.map +1 -0
  109. package/dist/mai/painter/index.d.ts +237 -0
  110. package/dist/mai/painter/index.js +1431 -0
  111. package/dist/mai/painter/index.js.map +1 -0
  112. package/dist/mai/painter/level50/index.d.ts +28 -0
  113. package/dist/mai/painter/level50/index.js +129 -0
  114. package/dist/mai/painter/level50/index.js.map +1 -0
  115. package/dist/mai/type.d.ts +110 -0
  116. package/dist/mai/type.js +73 -1
  117. package/dist/mai/type.js.map +1 -1
  118. package/package.json +56 -55
  119. package/dist/chu/bests/best50.d.ts +0 -37
  120. package/dist/chu/bests/best50.js +0 -742
  121. package/dist/chu/bests/best50.js.map +0 -1
  122. package/dist/chu/bests/index.d.ts +0 -1
  123. package/dist/chu/bests/index.js +0 -6
  124. package/dist/chu/bests/index.js.map +0 -1
  125. package/dist/chu/bests/type.d.ts +0 -122
  126. package/dist/chu/bests/type.js +0 -3
  127. package/dist/chu/bests/type.js.map +0 -1
  128. package/dist/chu/chart/database.js.map +0 -1
  129. package/dist/chu/chart/index.d.ts +0 -212
  130. package/dist/chu/chart/index.js +0 -1064
  131. package/dist/chu/chart/index.js.map +0 -1
  132. package/dist/chu/lib/index.js.map +0 -1
  133. package/dist/chu/lib/kamaiTachi/index.js.map +0 -1
  134. package/dist/chu/lib/lxns/index.js.map +0 -1
  135. package/dist/geki/bests/best50.d.ts +0 -35
  136. package/dist/geki/bests/best50.js +0 -821
  137. package/dist/geki/bests/best50.js.map +0 -1
  138. package/dist/geki/bests/index.d.ts +0 -1
  139. package/dist/geki/bests/index.js +0 -6
  140. package/dist/geki/bests/index.js.map +0 -1
  141. package/dist/geki/bests/lib/kamaiTachi/index.js.map +0 -1
  142. package/dist/geki/bests/type.d.ts +0 -122
  143. package/dist/geki/bests/type.js +0 -3
  144. package/dist/geki/bests/type.js.map +0 -1
  145. package/dist/geki/chart/database.js.map +0 -1
  146. package/dist/geki/chart/index.d.ts +0 -4
  147. package/dist/geki/chart/index.js +0 -32
  148. package/dist/geki/chart/index.js.map +0 -1
  149. package/dist/mai/best50/index.d.ts +0 -271
  150. package/dist/mai/best50/index.js +0 -915
  151. package/dist/mai/best50/index.js.map +0 -1
  152. package/dist/mai/chart/database.js.map +0 -1
  153. package/dist/mai/chart/index.d.ts +0 -238
  154. package/dist/mai/chart/index.js +0 -1281
  155. package/dist/mai/chart/index.js.map +0 -1
  156. package/dist/mai/level50/index.d.ts +0 -28
  157. package/dist/mai/level50/index.js +0 -774
  158. package/dist/mai/level50/index.js.map +0 -1
  159. package/dist/mai/lib/divingFish/index.js.map +0 -1
  160. package/dist/mai/lib/index.js.map +0 -1
  161. package/dist/mai/lib/kamaiTachi/index.js.map +0 -1
  162. package/dist/mai/lib/lxns/index.js.map +0 -1
  163. package/dist/mai/lib/maishift/index.js.map +0 -1
  164. /package/dist/geki/{bests/lib → lib/adapter}/index.d.ts +0 -0
  165. /package/dist/geki/{bests/lib → lib/adapter}/index.js +0 -0
  166. /package/dist/geki/{bests/lib → lib/adapter}/kamaiTachi/index.d.ts +0 -0
  167. /package/dist/geki/{bests/lib → lib/adapter}/kamaiTachi/index.js +0 -0
package/dist/lib/util.js CHANGED
@@ -4,9 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Util = void 0;
7
- const mai_1 = require("../mai");
8
- const lodash_1 = __importDefault(require("lodash"));
7
+ const color_1 = __importDefault(require("color"));
8
+ const bunyan_1 = __importDefault(require("bunyan"));
9
9
  const node_canvas_with_twemoji_and_discord_emoji_1 = require("node-canvas-with-twemoji-and-discord-emoji");
10
+ const v4_1 = require("zod/v4");
10
11
  class Util {
11
12
  /**
12
13
  * Pretty much ignores percision loss.
@@ -127,6 +128,38 @@ class Util {
127
128
  strarr[0] = strarr[0].toUpperCase();
128
129
  return strarr.join("");
129
130
  }
131
+ static buildLogger(name) {
132
+ return new bunyan_1.default({
133
+ name: name.join("."),
134
+ streams: [
135
+ {
136
+ stream: process.stdout,
137
+ level: (() => {
138
+ switch (process.env.LOG_LEVEL) {
139
+ case "trace":
140
+ return bunyan_1.default.TRACE;
141
+ case "debug":
142
+ return bunyan_1.default.DEBUG;
143
+ case "info":
144
+ return bunyan_1.default.INFO;
145
+ case "warn":
146
+ return bunyan_1.default.WARN;
147
+ case "error":
148
+ return bunyan_1.default.ERROR;
149
+ case "fatal":
150
+ return bunyan_1.default.FATAL;
151
+ default:
152
+ return bunyan_1.default.INFO;
153
+ }
154
+ })(),
155
+ },
156
+ {
157
+ stream: process.stderr,
158
+ level: bunyan_1.default.ERROR,
159
+ },
160
+ ],
161
+ });
162
+ }
130
163
  }
131
164
  exports.Util = Util;
132
165
  (function (Util) {
@@ -164,544 +197,21 @@ exports.Util = Util;
164
197
  static toHalfWidth = (str0) => this.sets.reduce((str, set) => str.replace(this.re(set, "full"), this.toHalf(set)), str0);
165
198
  }
166
199
  Util.HalfFullWidthConvert = HalfFullWidthConvert;
167
- let Maimai;
168
- (function (Maimai) {
169
- class Version {
170
- static DX = {
171
- name: "maimai でらっくす",
172
- gameVersion: {
173
- isDX: true,
174
- major: 1,
175
- minor: 0,
176
- },
177
- };
178
- static DX_PLUS = {
179
- name: "maimai でらっくす PLUS",
180
- gameVersion: {
181
- isDX: true,
182
- major: 1,
183
- minor: 5,
184
- },
185
- };
186
- static SPLASH = {
187
- name: "maimai でらっくす Splash",
188
- gameVersion: {
189
- isDX: true,
190
- major: 1,
191
- minor: 10,
192
- },
193
- };
194
- static SPLASH_PLUS = {
195
- name: "maimai でらっくす Splash PLUS",
196
- gameVersion: {
197
- isDX: true,
198
- major: 1,
199
- minor: 15,
200
- },
201
- };
202
- static UNIVERSE = {
203
- name: "maimai でらっくす UNiVERSE",
204
- gameVersion: {
205
- isDX: true,
206
- major: 1,
207
- minor: 20,
208
- },
209
- };
210
- static UNIVERSE_PLUS = {
211
- name: "maimai でらっくす UNiVERSE PLUS",
212
- gameVersion: {
213
- isDX: true,
214
- major: 1,
215
- minor: 25,
216
- },
217
- };
218
- static FESTIVAL = {
219
- name: "maimai でらっくす FESTiVAL",
220
- gameVersion: {
221
- isDX: true,
222
- major: 1,
223
- minor: 30,
224
- },
225
- };
226
- static FESTIVAL_PLUS = {
227
- name: "maimai でらっくす FESTiVAL PLUS",
228
- gameVersion: {
229
- isDX: true,
230
- major: 1,
231
- minor: 35,
232
- },
233
- };
234
- static BUDDIES = {
235
- name: "maimai でらっくす BUDDiES",
236
- gameVersion: {
237
- isDX: true,
238
- major: 1,
239
- minor: 40,
240
- },
241
- };
242
- static BUDDIES_PLUS = {
243
- name: "maimai でらっくす BUDDiES PLUS",
244
- gameVersion: {
245
- isDX: true,
246
- major: 1,
247
- minor: 45,
248
- },
249
- };
250
- static PRISM = {
251
- name: "maimai でらっくす PRiSM",
252
- gameVersion: {
253
- isDX: true,
254
- major: 1,
255
- minor: 50,
256
- },
257
- };
258
- static PRISM_PLUS = {
259
- name: "maimai でらっくす PRiSM PLUS",
260
- gameVersion: {
261
- isDX: true,
262
- major: 1,
263
- minor: 55,
264
- },
265
- };
266
- static versions = [
267
- Version.DX,
268
- Version.DX_PLUS,
269
- Version.SPLASH,
270
- Version.SPLASH_PLUS,
271
- Version.UNIVERSE,
272
- Version.UNIVERSE_PLUS,
273
- Version.FESTIVAL,
274
- Version.FESTIVAL_PLUS,
275
- Version.BUDDIES,
276
- Version.BUDDIES_PLUS,
277
- Version.PRISM,
278
- Version.PRISM_PLUS,
279
- ];
280
- static getNextVersion(version) {
281
- const index = lodash_1.default.findIndex(Version.versions, (v) => {
282
- return (lodash_1.default.isEqual(v.gameVersion.isDX, version.gameVersion.isDX) &&
283
- lodash_1.default.isEqual(v.gameVersion.major, version.gameVersion.major) &&
284
- lodash_1.default.isEqual(v.gameVersion.minor, version.gameVersion.minor));
285
- });
286
- if (index == -1) {
287
- return version;
288
- }
289
- else if (index == this.versions.length - 1) {
290
- return this.versions[index];
291
- }
292
- return this.versions[index + 1];
293
- }
294
- static getPreviousVersion(version) {
295
- const index = lodash_1.default.findIndex(Version.versions, (v) => {
296
- return lodash_1.default.isEqual(v.gameVersion, version.gameVersion);
297
- });
298
- if (index == -1) {
299
- return version;
300
- }
301
- else if (index == 0) {
302
- return this.versions[index];
303
- }
304
- return this.versions[index - 1];
305
- }
306
- static toEventVersion(version) {
307
- const event = {
308
- ...version,
309
- region: "DX",
310
- };
311
- event.gameVersion.release = 0;
312
- return event;
313
- }
314
- }
315
- Maimai.Version = Version;
316
- Maimai.RATING_CONSTANTS = {
317
- [mai_1.Maimai.Best50.EAchievementTypes.D]: {
318
- [0.4]: 6.4,
319
- [0.3]: 4.8,
320
- [0.2]: 3.2,
321
- [0.1]: 1.6,
322
- [0]: 0,
323
- },
324
- [mai_1.Maimai.Best50.EAchievementTypes.C]: 13.6,
325
- [mai_1.Maimai.Best50.EAchievementTypes.B]: 13.6,
326
- [mai_1.Maimai.Best50.EAchievementTypes.BB]: 13.6,
327
- [mai_1.Maimai.Best50.EAchievementTypes.BBB]: 13.6,
328
- [mai_1.Maimai.Best50.EAchievementTypes.A]: 13.6,
329
- [mai_1.Maimai.Best50.EAchievementTypes.AA]: 15.2,
330
- [mai_1.Maimai.Best50.EAchievementTypes.AAA]: 16.8,
331
- [mai_1.Maimai.Best50.EAchievementTypes.S]: 20.0,
332
- [mai_1.Maimai.Best50.EAchievementTypes.SP]: 20.3,
333
- [mai_1.Maimai.Best50.EAchievementTypes.SS]: 20.8,
334
- [mai_1.Maimai.Best50.EAchievementTypes.SSP]: 21.1,
335
- [mai_1.Maimai.Best50.EAchievementTypes.SSS]: 21.6,
336
- [mai_1.Maimai.Best50.EAchievementTypes.SSSP]: 22.4,
337
- };
338
- /**
339
- * Calculate the rating of a score.
340
- * @param internalLevel Internal level of the chart.
341
- * @param achievement Achivement in percentage, range between 0 to 101.0000.
342
- * @returns Raw decimal rating value.
343
- */
344
- function calculateRating(internalLevel, achievement) {
345
- let ratingConstant = 0;
346
- switch (true) {
347
- case achievement >= 100.5: {
348
- ratingConstant =
349
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.SSSP];
350
- break;
351
- }
352
- case achievement >= 100: {
353
- ratingConstant =
354
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.SSS];
355
- break;
356
- }
357
- case achievement >= 99.5: {
358
- ratingConstant =
359
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.SSP];
360
- break;
361
- }
362
- case achievement >= 99: {
363
- ratingConstant =
364
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.SS];
365
- break;
366
- }
367
- case achievement >= 98: {
368
- ratingConstant =
369
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.SP];
370
- break;
371
- }
372
- case achievement >= 97: {
373
- ratingConstant =
374
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.S];
375
- break;
376
- }
377
- case achievement >= 94: {
378
- ratingConstant =
379
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.AAA];
380
- break;
381
- }
382
- case achievement >= 90: {
383
- ratingConstant =
384
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.AA];
385
- break;
386
- }
387
- case achievement >= 80: {
388
- ratingConstant =
389
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.A];
390
- break;
391
- }
392
- case achievement >= 75: {
393
- ratingConstant =
394
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.BBB];
395
- break;
396
- }
397
- case achievement >= 70: {
398
- ratingConstant =
399
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.BB];
400
- break;
401
- }
402
- case achievement >= 60: {
403
- ratingConstant =
404
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.B];
405
- break;
406
- }
407
- case achievement >= 50: {
408
- ratingConstant =
409
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.C];
410
- break;
411
- }
412
- case achievement >= 40: {
413
- ratingConstant =
414
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.D]["0.4"];
415
- break;
416
- }
417
- case achievement >= 30: {
418
- ratingConstant =
419
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.D]["0.3"];
420
- break;
421
- }
422
- case achievement >= 20: {
423
- ratingConstant =
424
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.D]["0.2"];
425
- break;
426
- }
427
- case achievement >= 10: {
428
- ratingConstant =
429
- Maimai.RATING_CONSTANTS[mai_1.Maimai.Best50.EAchievementTypes.D]["0.1"];
430
- break;
431
- }
432
- }
433
- return ((Math.min(achievement, 100.5) / 100) *
434
- ratingConstant *
435
- internalLevel);
436
- }
437
- Maimai.calculateRating = calculateRating;
438
- })(Maimai = Util.Maimai || (Util.Maimai = {}));
439
- let Chunithm;
440
- (function (Chunithm) {
441
- class Version {
442
- static CHUNITHM = {
443
- name: "CHUNITHM",
444
- gameVersion: {
445
- major: 1,
446
- minor: 0,
447
- },
448
- };
449
- static CHUNITHM_PLUS = {
450
- name: "CHUNITHM PLUS",
451
- gameVersion: {
452
- major: 1,
453
- minor: 5,
454
- },
455
- };
456
- static AIR = {
457
- name: "CHUNITHM AIR",
458
- gameVersion: {
459
- major: 1,
460
- minor: 10,
461
- },
462
- };
463
- static AIR_PLUS = {
464
- name: "CHUNITHM AIR PLUS",
465
- gameVersion: {
466
- major: 1,
467
- minor: 15,
468
- },
469
- };
470
- static STAR = {
471
- name: "CHUNITHM STAR",
472
- gameVersion: {
473
- major: 1,
474
- minor: 20,
475
- },
476
- };
477
- static STAR_PLUS = {
478
- name: "CHUNITHM STAR PLUS",
479
- gameVersion: {
480
- major: 1,
481
- minor: 25,
482
- },
483
- };
484
- static AMAZON = {
485
- name: "CHUNITHM AMAZON",
486
- gameVersion: {
487
- major: 1,
488
- minor: 30,
489
- },
490
- };
491
- static AMAZON_PLUS = {
492
- name: "CHUNITHM AMAZON PLUS",
493
- gameVersion: {
494
- major: 1,
495
- minor: 35,
496
- },
497
- };
498
- static CRYSTAL = {
499
- name: "CHUNITHM CRYSTAL",
500
- gameVersion: {
501
- major: 1,
502
- minor: 40,
503
- },
504
- };
505
- static CRYSTAL_PLUS = {
506
- name: "CHUNITHM CRYSTAL PLUS",
507
- gameVersion: {
508
- major: 1,
509
- minor: 45,
510
- },
511
- };
512
- static PARADISE = {
513
- name: "CHUNITHM PARADISE",
514
- gameVersion: {
515
- major: 1,
516
- minor: 50,
517
- },
518
- };
519
- static NEW = {
520
- name: "CHUNITHM NEW!!",
521
- gameVersion: {
522
- major: 2,
523
- minor: 0,
524
- },
525
- };
526
- static NEW_PLUS = {
527
- name: "CHUNITHM NEW PLUS!!",
528
- gameVersion: {
529
- major: 2,
530
- minor: 5,
531
- },
532
- };
533
- static SUN = {
534
- name: "CHUNITHM SUN",
535
- gameVersion: {
536
- major: 2,
537
- minor: 10,
538
- },
539
- };
540
- static SUN_PLUS = {
541
- name: "CHUNITHM SUN PLUS",
542
- gameVersion: {
543
- major: 2,
544
- minor: 15,
545
- },
546
- };
547
- static LUMINOUS = {
548
- name: "CHUNITHM LUMINOUS",
549
- gameVersion: {
550
- major: 2,
551
- minor: 20,
552
- },
553
- };
554
- static LUMINOUS_PLUS = {
555
- name: "CHUNITHM LUMINOUS PLUS",
556
- gameVersion: {
557
- major: 2,
558
- minor: 25,
559
- },
560
- };
561
- static VERSE = {
562
- name: "CHUNITHM VERSE",
563
- gameVersion: {
564
- major: 2,
565
- minor: 30,
566
- },
567
- };
568
- static X_VERSE = {
569
- name: "CHUNITHM X-VERSE",
570
- gameVersion: {
571
- major: 2,
572
- minor: 40,
573
- },
574
- };
575
- static versions = [
576
- Version.CHUNITHM,
577
- Version.CHUNITHM_PLUS,
578
- Version.AIR,
579
- Version.AIR_PLUS,
580
- Version.STAR,
581
- Version.STAR_PLUS,
582
- Version.AMAZON,
583
- Version.AMAZON_PLUS,
584
- Version.CRYSTAL,
585
- Version.CRYSTAL_PLUS,
586
- Version.PARADISE,
587
- Version.NEW,
588
- Version.NEW_PLUS,
589
- Version.SUN,
590
- Version.SUN_PLUS,
591
- Version.LUMINOUS,
592
- Version.LUMINOUS_PLUS,
593
- Version.VERSE,
594
- Version.X_VERSE,
595
- ];
596
- static getNextVersion(version) {
597
- const index = lodash_1.default.findIndex(Version.versions, (v) => {
598
- return (lodash_1.default.isEqual(v.gameVersion.major, version.gameVersion.major) &&
599
- lodash_1.default.isEqual(v.gameVersion.minor, version.gameVersion.minor));
600
- });
601
- if (index == -1) {
602
- return version;
603
- }
604
- else if (index == this.versions.length - 1) {
605
- return this.versions[index];
606
- }
607
- return this.versions[index + 1];
608
- }
609
- static getPreviousVersion(version) {
610
- const index = lodash_1.default.findIndex(Version.versions, (v) => {
611
- return lodash_1.default.isEqual(v.gameVersion, version.gameVersion);
612
- });
613
- if (index == -1) {
614
- return version;
615
- }
616
- else if (index == 0) {
617
- return this.versions[index];
618
- }
619
- return this.versions[index - 1];
620
- }
621
- static toEventVersion(version) {
622
- const event = {
623
- ...version,
624
- region: "JPN",
625
- };
626
- event.gameVersion.release = 0;
627
- return event;
628
- }
629
- }
630
- Chunithm.Version = Version;
631
- function getNumberVersion(version) {
632
- return version.gameVersion.major * 100 + version.gameVersion.minor;
633
- } /**
634
- * Calculate the rating of a score.
635
- * @param internalLevel Internal level of the chart.
636
- * @param score Score, range between 0 to 1010000.
637
- * @returns Raw decimal rating value.
638
- */
639
- Chunithm.getNumberVersion = getNumberVersion;
640
- function calculateRating(internalLevel, score) {
641
- let bonus = 0;
642
- switch (true) {
643
- case score >= 1009000: {
644
- bonus = 2.15;
645
- break;
646
- }
647
- case score >= 1007500: {
648
- bonus =
649
- 2 +
650
- Util.truncateNumber((score - 1007500) / 100, 0) * 0.01;
651
- break;
652
- }
653
- case score >= 1005000: {
654
- bonus =
655
- 1.5 +
656
- Util.truncateNumber((score - 1005000) / 50, 0) * 0.01;
657
- break;
658
- }
659
- case score >= 1000000: {
660
- bonus =
661
- 1 +
662
- Util.truncateNumber((score - 1000000) / 100, 0) * 0.01;
663
- break;
664
- }
665
- case score >= 975000: {
666
- bonus =
667
- 0 +
668
- Util.truncateNumber((score - 975000) / 250, 0) * 0.01;
669
- break;
670
- }
671
- // case score >= 925000: {
672
- // bonus = 0 - ((975000 - score) / 50000) * 3.0;
673
- // break;
674
- // }
675
- // case score >= 900000: {
676
- // bonus = -3.0 - ((925000 - score) / 50000) * 2.0;
677
- // break;
678
- // }
679
- case score >= 900000: {
680
- bonus = -0.0 - ((975000 - score) / 75000) * 5.0;
681
- break;
682
- }
683
- case score >= 800000: {
684
- bonus =
685
- -5.0 -
686
- ((900000 - score) / 100000) *
687
- ((internalLevel - 5.0) / 2);
688
- break;
689
- }
690
- case score >= 500000: {
691
- bonus =
692
- -5.0 -
693
- (internalLevel - 5.0) / 2 -
694
- ((800000 - score) / 300000) *
695
- ((internalLevel - 5.0) / 2);
696
- break;
697
- }
698
- default: {
699
- bonus = -internalLevel;
700
- }
701
- }
702
- return internalLevel + bonus;
200
+ let z;
201
+ (function (z) {
202
+ function color() {
203
+ return v4_1.z.string().refine((str) => {
204
+ try {
205
+ new color_1.default(str);
206
+ return true;
207
+ }
208
+ catch {
209
+ return false;
210
+ }
211
+ });
703
212
  }
704
- Chunithm.calculateRating = calculateRating;
705
- })(Chunithm = Util.Chunithm || (Util.Chunithm = {}));
213
+ z.color = color;
214
+ })(z = Util.z || (Util.z = {}));
706
215
  })(Util || (exports.Util = Util = {}));
216
+ exports.default = Util;
707
217
  //# sourceMappingURL=util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/lib/util.ts"],"names":[],"mappings":";;;;;;AAAA,sCAA6C;AAQ7C,oDAAuB;AACvB,2GAAiF;AAEjF,MAAa,IAAI;IACb;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAe,EAAE,SAAiB;QAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,GAAG;YAAE,GAAG,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,GAAG;YAAE,GAAG,GAAG,EAAE,CAAC;QACnB,IAAI,SAAS,IAAI,CAAC;YAAE,OAAO,GAAG,CAAC;QAC/B,OAAO,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;IAC1E,CAAC;IACD,MAAM,CAAC,cAAc,CAAC,OAAe,EAAE,SAAiB;QACpD,OAAO,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;IACzD,CAAC;IACD;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAe,EAAE,SAAiB;QACvD,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,GAAG;YAAE,GAAG,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,IAAI,SAAS,IAAI,CAAC;gBAAE,OAAO,GAAG,GAAG,EAAE,CAAC;;gBAC/B,OAAO,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAClD,CAAC;aAAM,CAAC;YACJ,IAAI,SAAS,IAAI,CAAC;gBAAE,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;iBAC7C,CAAC;gBACF,IAAI,GAAG,CAAC,MAAM,GAAG,SAAS;oBACtB,OAAO,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;gBAClD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CACpB,UAAU,CACN,GAAG,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CACrE,CACJ,CAAC,QAAQ,EAAE,CAAC;gBACb,IAAI,MAAM,CAAC,MAAM,GAAG,SAAS;oBAAE,OAAO,MAAM,CAAC;gBAC7C,OAAO,GAAG,MAAM,CAAC,SAAS,CACtB,CAAC,EACD,MAAM,CAAC,MAAM,GAAG,SAAS,CAC5B,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;YACvD,CAAC;QACL,CAAC;IACL,CAAC;IAED,MAAM,CAAC,gBAAgB,CACnB,GAA6B,EAC7B,QAAgB,EAChB,QAAgB,EAChB,eAAe,GAAG,KAAK;QAEvB,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,OAAO,CAAC,KAAK,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YACvC,IAAI,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACjD,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,GAAG,eAAe,CAAC,CAAC,KAAK,IAAI,QAAQ,EAAE,CAAC;gBAC3D,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;oBAChC,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC3C,CAAC;gBACD,OAAO,GAAG,CAAC,IAAI,EAAE,GAAG,eAAe,CAAC;YACxC,CAAC;QACL,CAAC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,CAAC,QAAQ,CACX,GAA6B,EAC7B,GAAW,EACX,CAAS,EACT,CAAS,EACT,QAAgB;IAChB;;OAEG;IACH,SAAiB;IACjB;;OAEG;IACH,QAAgB,EAChB,YAAyC,MAAM,EAC/C,YAAqD,OAAO,EAC5D,cAAuD,OAAO,EAC9D,OAAe,uDAAuD,EACtE,eAAe,GAAG,KAAK;QAEvB,GAAG,CAAC,IAAI,GAAG,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC;QACnC,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;QACjE,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAChB,GAAG,CAAC,WAAW,GAAG,WAAW,CAAC;YAC9B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;YAC1B,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;YACtB,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC;YACvB,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;YAC1B,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9B,CAAC;QACD,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;QAC1B,GAAG,CAAC,IAAI,GAAG,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC;QACnC,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;QAC1B,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACxB,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAChB,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;YAC5B,GAAG,CAAC,SAAS,GAAG,SAAS,GAAG,CAAC,CAAC;YAC9B,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;YACtB,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC;YACvB,GAAG,CAAC,IAAI,GAAG,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC;YACnC,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;YAC1B,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,gBAAgB,CACzB,GAA6B,EAC7B,GAAW,EACX,CAAS,EACT,CAAS,EACT,QAAgB;IAChB;;OAEG;IACH,QAAgB,EAChB,YAAyC,MAAM,EAC/C,YAAqD,OAAO,EAC5D,OAAe,uDAAuD,EACtE,eAAe,GAAG,KAAK;QAEvB,GAAG,CAAC,IAAI,GAAG,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC;QACnC,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;QAEjE,GAAG,CAAC,eAAe,GAAG,OAAO,CAAC;QAC9B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;QAC1B,GAAG,CAAC,IAAI,GAAG,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC;QACnC,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;QAC1B,MAAM,IAAA,gEAAmB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1C,GAAG,CAAC,eAAe,GAAG,MAAM,CAAC;IACjC,CAAC;IACD,MAAM,CAAC,WAAW,CACd,GAA6B,EAC7B,QAAgB,EAChB,QAAgB,EAChB,QAAgB,EAChB,OAAe,uDAAuD;QAEtE,GAAG,CAAC,IAAI,GAAG,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAC3B,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CACxD,CAAC;QACF,OAAO,OAAO,CAAC;IACnB,CAAC;IACD,MAAM,CAAC,aAAa,CAAC,GAAW;QAC5B,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IACzD,CAAC;IACD,MAAM,CAAC,UAAU,CAAC,GAAW;QACzB,MAAM,MAAM,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QACxB,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACpC,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;CACJ;AAzJD,oBAyJC;AACD,WAAiB,IAAI;IACjB,MAAa,oBAAoB;QACrB,MAAM,CAAU,QAAQ,GAAG;YAC/B,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE;YAC5D,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE;YAC/D,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE;YAC/D,IAAI,EAAE;gBACF,KAAK,EAAE,CAAC;gBACR,IAAI,EAAE,iEAAiE;gBACvE,IAAI,EACA,8BAA8B;oBAC9B,qCAAqC;aAC5C;YACD,MAAM,EAAE;gBACJ,KAAK,EAAE,CAAC;gBACR,IAAI,EAAE,sBAAsB;gBAC5B,IAAI,EAAE,sBAAsB;aAC/B;SACJ,CAAC;QACF,aAAa;QACL,MAAM,CAAU,MAAM,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5C,GAAG,CAAC,KAAK;YACL,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;YAClD,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,aAAa;QACL,MAAM,CAAU,MAAM,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5C,GAAG,CAAC,KAAK;YACL,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;YAClD,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,aAAa;QACL,MAAM,CAAU,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACtC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;QACrD,MAAM,CAAU,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5D,aAAa;QACb,MAAM,CAAC,WAAW,GAAG,CAAC,IAAI,EAAE,EAAE,CAC1B,IAAI,CAAC,IAAI,CAAC,MAAM,CACZ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACT,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EACvD,IAAI,CACP,CAAC;QACN,aAAa;QACb,MAAM,CAAC,WAAW,GAAG,CAAC,IAAI,EAAE,EAAE,CAC1B,IAAI,CAAC,IAAI,CAAC,MAAM,CACZ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACT,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EACvD,IAAI,CACP,CAAC;;IA7CG,yBAAoB,uBA8ChC,CAAA;IACD,IAAiB,MAAM,CA0RtB;IA1RD,WAAiB,MAAM;QACnB,MAAa,OAAO;YAChB,MAAM,CAAU,EAAE,GAAG;gBACjB,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;iBACX;aACJ,CAAC;YACF,MAAM,CAAU,OAAO,GAAG;gBACtB,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;iBACX;aACJ,CAAC;YACF,MAAM,CAAU,MAAM,GAAG;gBACrB,IAAI,EAAE,qBAAqB;gBAC3B,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,WAAW,GAAG;gBAC1B,IAAI,EAAE,0BAA0B;gBAChC,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,QAAQ,GAAG;gBACvB,IAAI,EAAE,uBAAuB;gBAC7B,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,aAAa,GAAG;gBAC5B,IAAI,EAAE,4BAA4B;gBAClC,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,QAAQ,GAAG;gBACvB,IAAI,EAAE,uBAAuB;gBAC7B,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,aAAa,GAAG;gBAC5B,IAAI,EAAE,4BAA4B;gBAClC,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,OAAO,GAAG;gBACtB,IAAI,EAAE,sBAAsB;gBAC5B,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,YAAY,GAAG;gBAC3B,IAAI,EAAE,2BAA2B;gBACjC,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,KAAK,GAAG;gBACpB,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,UAAU,GAAG;gBACzB,IAAI,EAAE,yBAAyB;gBAC/B,WAAW,EAAE;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACM,MAAM,CAAC,QAAQ,GAAkC;gBACrD,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,OAAO;gBACf,OAAO,CAAC,MAAM;gBACd,OAAO,CAAC,WAAW;gBACnB,OAAO,CAAC,QAAQ;gBAChB,OAAO,CAAC,aAAa;gBACrB,OAAO,CAAC,QAAQ;gBAChB,OAAO,CAAC,aAAa;gBACrB,OAAO,CAAC,OAAO;gBACf,OAAO,CAAC,YAAY;gBACpB,OAAO,CAAC,KAAK;gBACb,OAAO,CAAC,UAAU;aACrB,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,OAAoC;gBACtD,MAAM,KAAK,GAAG,gBAAC,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBAC9C,OAAO,CACH,gBAAC,CAAC,OAAO,CACL,CAAC,CAAC,WAAW,CAAC,IAAI,EAClB,OAAO,CAAC,WAAW,CAAC,IAAI,CAC3B;wBACD,gBAAC,CAAC,OAAO,CACL,CAAC,CAAC,WAAW,CAAC,KAAK,EACnB,OAAO,CAAC,WAAW,CAAC,KAAK,CAC5B;wBACD,gBAAC,CAAC,OAAO,CACL,CAAC,CAAC,WAAW,CAAC,KAAK,EACnB,OAAO,CAAC,WAAW,CAAC,KAAK,CAC5B,CACJ,CAAC;gBACN,CAAC,CAAC,CAAC;gBACH,IAAI,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;oBACd,OAAO,OAAO,CAAC;gBACnB,CAAC;qBAAM,IAAI,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3C,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChC,CAAC;gBACD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACpC,CAAC;YACD,MAAM,CAAC,kBAAkB,CAAC,OAAoC;gBAC1D,MAAM,KAAK,GAAG,gBAAC,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBAC9C,OAAO,gBAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;gBACzD,CAAC,CAAC,CAAC;gBACH,IAAI,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;oBACd,OAAO,OAAO,CAAC;gBACnB,CAAC;qBAAM,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oBACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChC,CAAC;gBACD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACpC,CAAC;YACD,MAAM,CAAC,cAAc,CAAC,OAAoC;gBACtD,MAAM,KAAK,GAAG;oBACV,GAAG,OAAO;oBACV,MAAM,EAAE,IAAI;iBACf,CAAC;gBACF,KAAK,CAAC,WAAW,CAAC,OAAO,GAAG,CAAC,CAAC;gBAC9B,OAAO,KAAyC,CAAC;YACrD,CAAC;;QAzJQ,cAAO,UA0JnB,CAAA;QACY,uBAAgB,GAAG;YAC5B,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE;gBAC9B,CAAC,GAAG,CAAC,EAAE,GAAG;gBACV,CAAC,GAAG,CAAC,EAAE,GAAG;gBACV,CAAC,GAAG,CAAC,EAAE,GAAG;gBACV,CAAC,GAAG,CAAC,EAAE,GAAG;gBACV,CAAC,CAAC,CAAC,EAAE,CAAC;aACT;YACD,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,IAAI;YACtC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,IAAI;YACtC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,IAAI;YACvC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI;YACxC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,IAAI;YACtC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,IAAI;YACvC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI;YACxC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,IAAI;YACtC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,IAAI;YACvC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,IAAI;YACvC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI;YACxC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI;YACxC,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI;SAC5C,CAAC;QACF;;;;;WAKG;QACH,SAAgB,eAAe,CAC3B,aAAqB,EACrB,WAAmB;YAEnB,IAAI,cAAc,GAAG,CAAC,CAAC;YACvB,QAAQ,IAAI,EAAE,CAAC;gBACX,KAAK,WAAW,IAAI,KAAK,CAAC,CAAC,CAAC;oBACxB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;oBACxD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,GAAG,CAAC,CAAC,CAAC;oBACtB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBACvD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC;oBACvB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBACvD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;oBACtD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;oBACtD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;oBACrD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBACvD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;oBACtD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;oBACrD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBACvD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;oBACtD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;oBACrD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;oBACrD,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC5D,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC5D,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC5D,MAAM;gBACV,CAAC;gBACD,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrB,cAAc;wBACV,OAAA,gBAAgB,CAAC,YAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC5D,MAAM;gBACV,CAAC;YACL,CAAC;YACD,OAAO,CACH,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC;gBACpC,cAAc;gBACd,aAAa,CAChB,CAAC;QACN,CAAC;QAjGe,sBAAe,kBAiG9B,CAAA;IACL,CAAC,EA1RgB,MAAM,GAAN,WAAM,KAAN,WAAM,QA0RtB;IACD,IAAiB,QAAQ,CA+QxB;IA/QD,WAAiB,QAAQ;QACrB,MAAa,OAAO;YAChB,MAAM,CAAU,QAAQ,GAAG;gBACvB,IAAI,EAAE,UAAU;gBAChB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;iBACX;aACJ,CAAC;YACF,MAAM,CAAU,aAAa,GAAG;gBAC5B,IAAI,EAAE,eAAe;gBACrB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;iBACX;aACJ,CAAC;YACF,MAAM,CAAU,GAAG,GAAG;gBAClB,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,QAAQ,GAAG;gBACvB,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,IAAI,GAAG;gBACnB,IAAI,EAAE,eAAe;gBACrB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,SAAS,GAAG;gBACxB,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,MAAM,GAAG;gBACrB,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,WAAW,GAAG;gBAC1B,IAAI,EAAE,sBAAsB;gBAC5B,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,OAAO,GAAG;gBACtB,IAAI,EAAE,kBAAkB;gBACxB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,YAAY,GAAG;gBAC3B,IAAI,EAAE,uBAAuB;gBAC7B,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,QAAQ,GAAG;gBACvB,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,GAAG,GAAG;gBAClB,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;iBACX;aACJ,CAAC;YACF,MAAM,CAAU,QAAQ,GAAG;gBACvB,IAAI,EAAE,qBAAqB;gBAC3B,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;iBACX;aACJ,CAAC;YACF,MAAM,CAAU,GAAG,GAAG;gBAClB,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,QAAQ,GAAG;gBACvB,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,QAAQ,GAAG;gBACvB,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,aAAa,GAAG;gBAC5B,IAAI,EAAE,wBAAwB;gBAC9B,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,KAAK,GAAG;gBACpB,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACF,MAAM,CAAU,OAAO,GAAG;gBACtB,IAAI,EAAE,kBAAkB;gBACxB,WAAW,EAAE;oBACT,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,EAAE;iBACZ;aACJ,CAAC;YACM,MAAM,CAAC,QAAQ,GAAkC;gBACrD,OAAO,CAAC,QAAQ;gBAChB,OAAO,CAAC,aAAa;gBACrB,OAAO,CAAC,GAAG;gBACX,OAAO,CAAC,QAAQ;gBAChB,OAAO,CAAC,IAAI;gBACZ,OAAO,CAAC,SAAS;gBACjB,OAAO,CAAC,MAAM;gBACd,OAAO,CAAC,WAAW;gBACnB,OAAO,CAAC,OAAO;gBACf,OAAO,CAAC,YAAY;gBACpB,OAAO,CAAC,QAAQ;gBAChB,OAAO,CAAC,GAAG;gBACX,OAAO,CAAC,QAAQ;gBAChB,OAAO,CAAC,GAAG;gBACX,OAAO,CAAC,QAAQ;gBAChB,OAAO,CAAC,QAAQ;gBAChB,OAAO,CAAC,aAAa;gBACrB,OAAO,CAAC,KAAK;gBACb,OAAO,CAAC,OAAO;aAClB,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,OAAoC;gBACtD,MAAM,KAAK,GAAG,gBAAC,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBAC9C,OAAO,CACH,gBAAC,CAAC,OAAO,CACL,CAAC,CAAC,WAAW,CAAC,KAAK,EACnB,OAAO,CAAC,WAAW,CAAC,KAAK,CAC5B;wBACD,gBAAC,CAAC,OAAO,CACL,CAAC,CAAC,WAAW,CAAC,KAAK,EACnB,OAAO,CAAC,WAAW,CAAC,KAAK,CAC5B,CACJ,CAAC;gBACN,CAAC,CAAC,CAAC;gBACH,IAAI,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;oBACd,OAAO,OAAO,CAAC;gBACnB,CAAC;qBAAM,IAAI,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3C,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChC,CAAC;gBACD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACpC,CAAC;YACD,MAAM,CAAC,kBAAkB,CAAC,OAAoC;gBAC1D,MAAM,KAAK,GAAG,gBAAC,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBAC9C,OAAO,gBAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;gBACzD,CAAC,CAAC,CAAC;gBACH,IAAI,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;oBACd,OAAO,OAAO,CAAC;gBACnB,CAAC;qBAAM,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oBACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChC,CAAC;gBACD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACpC,CAAC;YACD,MAAM,CAAC,cAAc,CAAC,OAAoC;gBACtD,MAAM,KAAK,GAAG;oBACV,GAAG,OAAO;oBACV,MAAM,EAAE,KAAK;iBAChB,CAAC;gBACF,KAAK,CAAC,WAAW,CAAC,OAAO,GAAG,CAAC,CAAC;gBAC9B,OAAO,KAAyC,CAAC;YACrD,CAAC;;QAjMQ,gBAAO,UAkMnB,CAAA;QACD,SAAgB,gBAAgB,CAAC,OAAoC;YACjE,OAAO,OAAO,CAAC,WAAW,CAAC,KAAK,GAAG,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC;QACvE,CAAC,CAAC;;;;;WAKC;QAPa,yBAAgB,mBAE/B,CAAA;QAMD,SAAgB,eAAe,CAC3B,aAAqB,EACrB,KAAa;YAEb,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,QAAQ,IAAI,EAAE,CAAC;gBACX,KAAK,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC;oBACpB,KAAK,GAAG,IAAI,CAAC;oBACb,MAAM;gBACV,CAAC;gBACD,KAAK,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC;oBACpB,KAAK;wBACD,CAAC;4BACD,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;oBAC3D,MAAM;gBACV,CAAC;gBACD,KAAK,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC;oBACpB,KAAK;wBACD,GAAG;4BACH,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;oBAC1D,MAAM;gBACV,CAAC;gBACD,KAAK,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC;oBACpB,KAAK;wBACD,CAAC;4BACD,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;oBAC3D,MAAM;gBACV,CAAC;gBACD,KAAK,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC;oBACnB,KAAK;wBACD,CAAC;4BACD,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;oBAC1D,MAAM;gBACV,CAAC;gBACD,0BAA0B;gBAC1B,oDAAoD;gBACpD,aAAa;gBACb,IAAI;gBACJ,0BAA0B;gBAC1B,uDAAuD;gBACvD,aAAa;gBACb,IAAI;gBACJ,KAAK,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC;oBACnB,KAAK,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC;oBAChD,MAAM;gBACV,CAAC;gBACD,KAAK,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC;oBACnB,KAAK;wBACD,CAAC,GAAG;4BACJ,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC;gCACvB,CAAC,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;oBACpC,MAAM;gBACV,CAAC;gBACD,KAAK,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC;oBACnB,KAAK;wBACD,CAAC,GAAG;4BACJ,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,CAAC;4BACzB,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC;gCACvB,CAAC,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;oBACpC,MAAM;gBACV,CAAC;gBACD,OAAO,CAAC,CAAC,CAAC;oBACN,KAAK,GAAG,CAAC,aAAa,CAAC;gBAC3B,CAAC;YACL,CAAC;YACD,OAAO,aAAa,GAAG,KAAK,CAAC;QACjC,CAAC;QAlEe,wBAAe,kBAkE9B,CAAA;IACL,CAAC,EA/QgB,QAAQ,GAAR,aAAQ,KAAR,aAAQ,QA+QxB;AACL,CAAC,EA3lBgB,IAAI,oBAAJ,IAAI,QA2lBpB"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/lib/util.ts"],"names":[],"mappings":"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"}