@maka/maka-cli 5.67.0 → 5.69.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 (137) hide show
  1. package/bundle/typescript/package.json +1 -1
  2. package/bundle/typescript/src/commands/game/sideQuest/archetypes.js +6 -1
  3. package/bundle/typescript/src/commands/game/sideQuest/archetypes.js.map +1 -1
  4. package/bundle/typescript/src/commands/game/sideQuest/commands/abandon.d.ts +30 -0
  5. package/bundle/typescript/src/commands/game/sideQuest/commands/abandon.js +54 -0
  6. package/bundle/typescript/src/commands/game/sideQuest/commands/abandon.js.map +1 -0
  7. package/bundle/typescript/src/commands/game/sideQuest/commands/ar.js +4 -1
  8. package/bundle/typescript/src/commands/game/sideQuest/commands/ar.js.map +1 -1
  9. package/bundle/typescript/src/commands/game/sideQuest/commands/bluff.js +5 -1
  10. package/bundle/typescript/src/commands/game/sideQuest/commands/bluff.js.map +1 -1
  11. package/bundle/typescript/src/commands/game/sideQuest/commands/bypass-command.js +12 -4
  12. package/bundle/typescript/src/commands/game/sideQuest/commands/bypass-command.js.map +1 -1
  13. package/bundle/typescript/src/commands/game/sideQuest/commands/call.d.ts +28 -0
  14. package/bundle/typescript/src/commands/game/sideQuest/commands/call.js +105 -1
  15. package/bundle/typescript/src/commands/game/sideQuest/commands/call.js.map +1 -1
  16. package/bundle/typescript/src/commands/game/sideQuest/commands/climb.d.ts +48 -0
  17. package/bundle/typescript/src/commands/game/sideQuest/commands/climb.js +107 -0
  18. package/bundle/typescript/src/commands/game/sideQuest/commands/climb.js.map +1 -0
  19. package/bundle/typescript/src/commands/game/sideQuest/commands/companions.d.ts +39 -3
  20. package/bundle/typescript/src/commands/game/sideQuest/commands/companions.js +89 -4
  21. package/bundle/typescript/src/commands/game/sideQuest/commands/companions.js.map +1 -1
  22. package/bundle/typescript/src/commands/game/sideQuest/commands/compile.d.ts +37 -17
  23. package/bundle/typescript/src/commands/game/sideQuest/commands/compile.js +53 -115
  24. package/bundle/typescript/src/commands/game/sideQuest/commands/compile.js.map +1 -1
  25. package/bundle/typescript/src/commands/game/sideQuest/commands/decompile.d.ts +55 -0
  26. package/bundle/typescript/src/commands/game/sideQuest/commands/decompile.js +203 -0
  27. package/bundle/typescript/src/commands/game/sideQuest/commands/decompile.js.map +1 -0
  28. package/bundle/typescript/src/commands/game/sideQuest/commands/go.d.ts +23 -0
  29. package/bundle/typescript/src/commands/game/sideQuest/commands/go.js +44 -9
  30. package/bundle/typescript/src/commands/game/sideQuest/commands/go.js.map +1 -1
  31. package/bundle/typescript/src/commands/game/sideQuest/commands/hack.d.ts +24 -0
  32. package/bundle/typescript/src/commands/game/sideQuest/commands/hack.js +70 -12
  33. package/bundle/typescript/src/commands/game/sideQuest/commands/hack.js.map +1 -1
  34. package/bundle/typescript/src/commands/game/sideQuest/commands/lock.js +17 -4
  35. package/bundle/typescript/src/commands/game/sideQuest/commands/lock.js.map +1 -1
  36. package/bundle/typescript/src/commands/game/sideQuest/commands/look.js +12 -2
  37. package/bundle/typescript/src/commands/game/sideQuest/commands/look.js.map +1 -1
  38. package/bundle/typescript/src/commands/game/sideQuest/commands/map.js +12 -1
  39. package/bundle/typescript/src/commands/game/sideQuest/commands/map.js.map +1 -1
  40. package/bundle/typescript/src/commands/game/sideQuest/commands/mark.js +8 -6
  41. package/bundle/typescript/src/commands/game/sideQuest/commands/mark.js.map +1 -1
  42. package/bundle/typescript/src/commands/game/sideQuest/commands/move.d.ts +11 -0
  43. package/bundle/typescript/src/commands/game/sideQuest/commands/move.js +107 -14
  44. package/bundle/typescript/src/commands/game/sideQuest/commands/move.js.map +1 -1
  45. package/bundle/typescript/src/commands/game/sideQuest/commands/order.js +69 -1
  46. package/bundle/typescript/src/commands/game/sideQuest/commands/order.js.map +1 -1
  47. package/bundle/typescript/src/commands/game/sideQuest/commands/overwatch.js +5 -4
  48. package/bundle/typescript/src/commands/game/sideQuest/commands/overwatch.js.map +1 -1
  49. package/bundle/typescript/src/commands/game/sideQuest/commands/register.d.ts +15 -2
  50. package/bundle/typescript/src/commands/game/sideQuest/commands/register.js +32 -6
  51. package/bundle/typescript/src/commands/game/sideQuest/commands/register.js.map +1 -1
  52. package/bundle/typescript/src/commands/game/sideQuest/commands/search.js +33 -2
  53. package/bundle/typescript/src/commands/game/sideQuest/commands/search.js.map +1 -1
  54. package/bundle/typescript/src/commands/game/sideQuest/commands/sprites.d.ts +35 -0
  55. package/bundle/typescript/src/commands/game/sideQuest/commands/sprites.js +108 -0
  56. package/bundle/typescript/src/commands/game/sideQuest/commands/sprites.js.map +1 -0
  57. package/bundle/typescript/src/commands/game/sideQuest/commands/standby.d.ts +40 -0
  58. package/bundle/typescript/src/commands/game/sideQuest/commands/standby.js +91 -0
  59. package/bundle/typescript/src/commands/game/sideQuest/commands/standby.js.map +1 -0
  60. package/bundle/typescript/src/commands/game/sideQuest/commands/tap.js +10 -11
  61. package/bundle/typescript/src/commands/game/sideQuest/commands/tap.js.map +1 -1
  62. package/bundle/typescript/src/commands/game/sideQuest/commands/thread.d.ts +27 -0
  63. package/bundle/typescript/src/commands/game/sideQuest/commands/thread.js +7 -2
  64. package/bundle/typescript/src/commands/game/sideQuest/commands/thread.js.map +1 -1
  65. package/bundle/typescript/src/commands/game/sideQuest/commands/unlock.js +4 -2
  66. package/bundle/typescript/src/commands/game/sideQuest/commands/unlock.js.map +1 -1
  67. package/bundle/typescript/src/commands/game/sideQuest/commands/unravel.d.ts +57 -0
  68. package/bundle/typescript/src/commands/game/sideQuest/commands/unravel.js +162 -0
  69. package/bundle/typescript/src/commands/game/sideQuest/commands/unravel.js.map +1 -0
  70. package/bundle/typescript/src/commands/game/sideQuest/commands/use.js +12 -5
  71. package/bundle/typescript/src/commands/game/sideQuest/commands/use.js.map +1 -1
  72. package/bundle/typescript/src/commands/game/sideQuest/engine-version.d.ts +1 -1
  73. package/bundle/typescript/src/commands/game/sideQuest/engine-version.js +17 -1
  74. package/bundle/typescript/src/commands/game/sideQuest/engine-version.js.map +1 -1
  75. package/bundle/typescript/src/commands/game/sideQuest/factories/repro-scene.js +41 -1
  76. package/bundle/typescript/src/commands/game/sideQuest/factories/repro-scene.js.map +1 -1
  77. package/bundle/typescript/src/commands/game/sideQuest/factories/room-factory.js +4 -0
  78. package/bundle/typescript/src/commands/game/sideQuest/factories/room-factory.js.map +1 -1
  79. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.d.ts +2 -0
  80. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js +91 -6
  81. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js.map +1 -1
  82. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.js +6 -0
  83. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.js.map +1 -1
  84. package/bundle/typescript/src/commands/game/sideQuest/game.d.ts +135 -11
  85. package/bundle/typescript/src/commands/game/sideQuest/game.js +361 -30
  86. package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
  87. package/bundle/typescript/src/commands/game/sideQuest/headless-harness.d.ts +24 -12
  88. package/bundle/typescript/src/commands/game/sideQuest/headless-harness.js +53 -13
  89. package/bundle/typescript/src/commands/game/sideQuest/headless-harness.js.map +1 -1
  90. package/bundle/typescript/src/commands/game/sideQuest/models/item.d.ts +25 -0
  91. package/bundle/typescript/src/commands/game/sideQuest/models/item.js +31 -0
  92. package/bundle/typescript/src/commands/game/sideQuest/models/item.js.map +1 -1
  93. package/bundle/typescript/src/commands/game/sideQuest/models/npc.d.ts +98 -1
  94. package/bundle/typescript/src/commands/game/sideQuest/models/npc.js +98 -4
  95. package/bundle/typescript/src/commands/game/sideQuest/models/npc.js.map +1 -1
  96. package/bundle/typescript/src/commands/game/sideQuest/models/player.d.ts +95 -4
  97. package/bundle/typescript/src/commands/game/sideQuest/models/player.js +179 -20
  98. package/bundle/typescript/src/commands/game/sideQuest/models/player.js.map +1 -1
  99. package/bundle/typescript/src/commands/game/sideQuest/models/room.d.ts +90 -0
  100. package/bundle/typescript/src/commands/game/sideQuest/models/room.js +114 -5
  101. package/bundle/typescript/src/commands/game/sideQuest/models/room.js.map +1 -1
  102. package/bundle/typescript/src/commands/game/sideQuest/resonance-actions.d.ts +108 -0
  103. package/bundle/typescript/src/commands/game/sideQuest/resonance-actions.js +186 -0
  104. package/bundle/typescript/src/commands/game/sideQuest/resonance-actions.js.map +1 -0
  105. package/bundle/typescript/src/commands/game/sideQuest/scenes/scene1.json +1 -0
  106. package/bundle/typescript/src/commands/game/sideQuest/scenes/scene2.json +2 -0
  107. package/bundle/typescript/src/commands/game/sideQuest/sprite-powers.d.ts +88 -0
  108. package/bundle/typescript/src/commands/game/sideQuest/sprite-powers.js +137 -0
  109. package/bundle/typescript/src/commands/game/sideQuest/sprite-powers.js.map +1 -0
  110. package/bundle/typescript/src/commands/game/sideQuest/types/repro.d.ts +42 -0
  111. package/bundle/typescript/src/commands/game/sideQuest/types/save-file.d.ts +32 -1
  112. package/bundle/typescript/src/commands/game/sideQuest/types/seed/player-seed.d.ts +12 -0
  113. package/bundle/typescript/src/commands/game/sideQuest/types/seed/room-seed.d.ts +1 -0
  114. package/bundle/typescript/src/commands/game/sideQuest/ui.js +3 -0
  115. package/bundle/typescript/src/commands/game/sideQuest/ui.js.map +1 -1
  116. package/bundle/typescript/src/commands/game/sideQuest/utilities/combat-exchange.js +5 -1
  117. package/bundle/typescript/src/commands/game/sideQuest/utilities/combat-exchange.js.map +1 -1
  118. package/bundle/typescript/src/commands/game/sideQuest/utilities/dice.d.ts +41 -1
  119. package/bundle/typescript/src/commands/game/sideQuest/utilities/dice.js +52 -4
  120. package/bundle/typescript/src/commands/game/sideQuest/utilities/dice.js.map +1 -1
  121. package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-view.d.ts +14 -2
  122. package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-view.js +78 -7
  123. package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-view.js.map +1 -1
  124. package/bundle/typescript/src/commands/game/sideQuest/utilities/outdoors.d.ts +7 -0
  125. package/bundle/typescript/src/commands/game/sideQuest/utilities/outdoors.js +24 -0
  126. package/bundle/typescript/src/commands/game/sideQuest/utilities/outdoors.js.map +1 -1
  127. package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js +14 -0
  128. package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js.map +1 -1
  129. package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.d.ts +46 -0
  130. package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.js +90 -5
  131. package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.js.map +1 -1
  132. package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.d.ts +70 -0
  133. package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js +168 -22
  134. package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js.map +1 -1
  135. package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js +83 -0
  136. package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js.map +1 -1
  137. package/package.json +1 -1
@@ -20,7 +20,7 @@ export const SKILL_NAMES = [
20
20
  'performance', 'instruction',
21
21
  'first-aid', 'medicine',
22
22
  'assensing', 'spellcasting', 'counterspelling',
23
- 'piloting', 'conjuring', 'compiling', 'registering', 'software',
23
+ 'piloting', 'conjuring', 'compiling', 'decompiling', 'registering', 'software',
24
24
  ];
25
25
  /**
26
26
  * Skills that fall back to the legacy `combatSkill` attribute when no
@@ -138,6 +138,41 @@ export class Player extends AbstractPlayer {
138
138
  * persuaded him while standing in the same doorway.
139
139
  */
140
140
  guarding = false;
141
+ /**
142
+ * THIS ACTOR IS OPPOSITION (JjQdy4A4tzcQdPHno: "none of the NPCs ever
143
+ * seem to get hostile").
144
+ *
145
+ * WHAT WAS ACTUALLY MISSING, after two wrong diagnoses of mine. It is
146
+ * not that nothing wakes them: go.ts's arrival calls
147
+ * performAction('enters'), which fans out to NPC.see, and `enter` is
148
+ * in RESPOND_WORTHY_VERB -- the AI is asked. It is not that they
149
+ * cannot fight: the brief lists `attack`, `kill` and `subdue` and
150
+ * explains combat at length. And the detection canon asks for is
151
+ * already there -- npc.ts runs an opposed Agility + sneaking vs
152
+ * Intuition + perception test per witness on a sneaking arrival, and
153
+ * a winner is never registered at all.
154
+ *
155
+ * What was missing is a REASON. OFFERING THE VERB IS NOT THE SAME AS
156
+ * GIVING THEM A REASON: an NPC briefed with no opposition to the
157
+ * player answers neutrally, because neutral is in character. So this
158
+ * flag exists to tell them they have one.
159
+ *
160
+ * WHAT IT DOES NOT DO, and these are the load-bearing absences:
161
+ * - It does NOT attack on sight. It adds a line to the brief; the
162
+ * AI still chooses, and challenging, raising an alarm, or calling
163
+ * for backup are all better first moves than shooting.
164
+ * - It adds NO tick and NO new wake-up. The occasion already
165
+ * existed; this rides it.
166
+ * - It is never INFERRED. Only a seed that says so, or a scene that
167
+ * sets it deliberately, makes someone opposition.
168
+ *
169
+ * The asymmetry that decides every judgement call here: a guard who
170
+ * should have gone hostile and didn't is a missed beat, and a
171
+ * bartender who goes hostile is a broken scene. PREFER UNDER-FIRING.
172
+ *
173
+ * Cleared the same way `guarding` is -- talked round, or beaten.
174
+ */
175
+ hostile = false;
141
176
  // THERE IS NO `passphrase` HERE, and its absence is a ruling rather
142
177
  // than an omission (user, 2026-08-27). A guard briefly carried one --
143
178
  // the phrase that used to open the lock they replaced -- and it was
@@ -306,6 +341,54 @@ export class Player extends AbstractPlayer {
306
341
  get matrixActionPenalty() {
307
342
  return this.runningSilent ? -2 : 0;
308
343
  }
344
+ /**
345
+ * THIS PERSONA'S MATRIX ATTRIBUTE (p.226 for a deck's array, p.251
346
+ * for a living persona, p.222/p.234 for an ordinary device; p.46-47
347
+ * for what a limit is). All RAG-checked 2026-08-28 rather than
348
+ * recalled.
349
+ *
350
+ * ONE NUMBER, TWO ROLES, which is why it is named for the number
351
+ * rather than for either job:
352
+ * - THE BRACKET on a Matrix action. SR5 writes them as `Hacking +
353
+ * Logic [Sleaze]` and p.244 files the whole action list by which
354
+ * limit it uses; the bracket caps HITS (see utilities/dice.ts).
355
+ * - THE ATTRIBUTE in its own right -- Matrix VR initiative is Data
356
+ * Processing + Intuition (p.229-230), where nothing is capped.
357
+ *
358
+ * It was called `matrixLimit` while the bracket was its only caller.
359
+ * Renamed once initiative wanted it, because a name that is accurate
360
+ * for its first use and misleading afterwards is a defect: reading
361
+ * `matrixLimit('dataProcessing')` in an initiative pool, you would
362
+ * reasonably assume something was being capped.
363
+ *
364
+ * Whole, never halved, in both roles.
365
+ *
366
+ * A TECHNOMANCER HAS NO DECK AND IS NOT UNLIMITED. Their living
367
+ * persona's Matrix attributes come from their Mental attributes
368
+ * (p.251): Attack = Charisma, Sleaze = Intuition, Data Processing =
369
+ * Logic, Firewall = Willpower. This engine used to give them
370
+ * Resonance/2 as dice, which is neither the right attribute nor the
371
+ * right kind of thing -- Resonance is their Device Rating, not their
372
+ * array.
373
+ *
374
+ * Returns 0 when the actor has no way to take the action at all (no
375
+ * deck, and a commlink has no Attack or Sleaze). Callers gate on the
376
+ * gear BEFORE rolling, so a 0 reaching rollPool means a caller
377
+ * skipped its gate -- which is why rollPool refuses a zero limit
378
+ * loudly rather than honouring it.
379
+ */
380
+ matrixAttribute(kind) {
381
+ if (this.isTechnomancer()) {
382
+ switch (kind) {
383
+ case 'attack': return this.charisma;
384
+ case 'sleaze': return this.intuition;
385
+ case 'dataProcessing': return this.logic;
386
+ case 'firewall': return this.willpower;
387
+ }
388
+ }
389
+ const rig = this.activeDeck ?? this.getCyberdeck() ?? this.getPanMaster();
390
+ return rig?.matrixAttribute(kind) ?? 0;
391
+ }
309
392
  getPanMaster() {
310
393
  const deck = this.getCyberdeck();
311
394
  // Worn first, then CARRIED (playtest 2026-08-24: NPCs keep their
@@ -324,12 +407,44 @@ export class Player extends AbstractPlayer {
324
407
  * Loaded software helps: Signal Scrub cleans the noise floor (+1),
325
408
  * Sneak deepens a silent PAN's cover (+2).
326
409
  */
327
- getPanDefensePool() {
410
+ getPanDefensePool(against = 'sleaze') {
328
411
  const master = this.getPanMaster();
329
412
  const silentBonus = this.runningSilent ? 2 : 0;
330
413
  const scrub = master?.hasProgram('signal-scrub') ? 1 : 0;
331
414
  const sneak = master?.hasProgram('sneak') && this.runningSilent ? 2 : 0;
332
- return Math.max(0, this.logic + (master?.matrixEdge('firewall') ?? 0) + silentBonus + scrub + sneak);
415
+ // THE DEFENCE IS THE BOOK'S, and it was wrong three ways at once
416
+ // (RAG-checked 2026-08-28). p.240: Hack on the Fly is opposed by
417
+ // INTUITION + Firewall. p.238: Brute Force by WILLPOWER + Firewall.
418
+ // Neither is Logic, and Firewall is a whole attribute on this side
419
+ // -- it was being halved by the same limits-to-pool substitution
420
+ // the attack side used, which is the one place that convention was
421
+ // costing the DEFENDER dice rather than the attacker.
422
+ //
423
+ // No limit, ever, and that is canon rather than an omission: limits
424
+ // apply only to a pool built from a skill plus an attribute (p.46-
425
+ // 47), and there is no skill in Intuition + Firewall -- the melee
426
+ // example at p.174 spells it out, "no limit because there is no
427
+ // skill involved".
428
+ const attribute = against === 'attack' ? this.willpower : this.intuition;
429
+ const firewall = this.isTechnomancer()
430
+ // A living persona's Firewall is Willpower (p.251).
431
+ ? this.willpower
432
+ : (master?.matrixAttribute('firewall') ?? 0);
433
+ return Math.max(0, attribute + firewall + silentBonus + scrub + sneak);
434
+ }
435
+ /**
436
+ * The limit on THIS actor's current attack, or undefined when the
437
+ * engine models none.
438
+ *
439
+ * Matrix only, deliberately. A meat weapon's limit is its ACCURACY
440
+ * (p.46-47), which this engine does not model at all -- a real canon
441
+ * gap, filed on the board rather than folded in here, because
442
+ * Accuracy is its own subsystem with its own balance story and
443
+ * bundling it would hide the Matrix change inside a combat change no
444
+ * playtest could separate.
445
+ */
446
+ getAttackLimit() {
447
+ return this.plane === 'matrix' ? this.matrixAttribute('attack') : undefined;
333
448
  }
334
449
  get matrixTaken() {
335
450
  return this.getAnyCyberdeck()?.deckDamage ?? 0;
@@ -1377,10 +1492,15 @@ export class Player extends AbstractPlayer {
1377
1492
  // sleaze half) -- best-of so existing deckers keep their pool.
1378
1493
  const matrixSkill = Math.max(this.skillRating('hacking'), this.skillRating('cybercombat'));
1379
1494
  // Attack Upgrade echo (p.258): +1 on the offensive matrix pool.
1380
- // The deck's Attack attribute rides at half (limits-to-pool
1381
- // convention) -- deck config is now a real combat decision.
1382
- const atkDeck = this.activeDeck ?? this.getCyberdeck();
1383
- return Math.max(0, this.logic + matrixSkill + Math.floor(this.resonance / 2) + hot + this.augBonus('matrix') + this.qualityBonus('hacking') + (atkDeck?.matrixEdge('attack') ?? 0) + (this.hasMetamagic('attack-upgrade') ? 1 : 0) + this.formMatrixBonus + this.woundModifier - this.sustainingPenalty);
1495
+ //
1496
+ // THE DECK'S ATTACK IS NO LONGER A DIE HERE. Canon makes a Matrix
1497
+ // attack Cybercombat + Logic [Attack] (p.238) -- the array is the
1498
+ // LIMIT, not part of the pool -- so both halves of the old
1499
+ // limits-to-pool substitution are gone: the deck's Attack/2 and,
1500
+ // for a technomancer, Resonance/2. A living persona's Attack is
1501
+ // Charisma (p.251) and rides in the bracket too. See
1502
+ // getAttackLimit, and utilities/dice.ts for what a limit does.
1503
+ return Math.max(0, this.logic + matrixSkill + hot + this.augBonus('matrix') + this.qualityBonus('hacking') + (this.hasMetamagic('attack-upgrade') ? 1 : 0) + this.formMatrixBonus + this.woundModifier - this.sustainingPenalty);
1384
1504
  }
1385
1505
  if (this.plane === 'astral') {
1386
1506
  // ASTRAL COMBAT (canon: its own Willpower skill) -- best-of with
@@ -1418,10 +1538,20 @@ export class Player extends AbstractPlayer {
1418
1538
  }
1419
1539
  if (this.plane === 'matrix') {
1420
1540
  const hot = this.simMode === 'hot' ? 1 : 0;
1421
- // Canon dodge on the grid is Intuition + Firewall -- the deck's
1422
- // Firewall edge joins the pool (half, limits-to-pool convention).
1423
- const fwDeck = this.isTechnomancer() ? undefined : (this.activeDeck ?? this.getCyberdeck());
1424
- return Math.max(0, this.intuition + Math.floor(this.logic / 2) + Math.floor(this.resonance / 2) + hot + this.augBonus('matrix') + this.qualityBonus('matrix') + (fwDeck?.matrixEdge('firewall') ?? 0) + this.formDefenseBonus + this.woundModifier - this.sustainingPenalty);
1541
+ // THE DODGE ON THE GRID IS INTUITION + FIREWALL, and now it
1542
+ // actually is (p.239 DATA SPIKE, RAG-checked 2026-08-28; the
1543
+ // p.270-271 worked example repeats it verbatim).
1544
+ //
1545
+ // The comment above this line already said "canon dodge on the
1546
+ // grid is Intuition + Firewall" while the expression underneath
1547
+ // added Logic/2 and Resonance/2 and then halved the Firewall --
1548
+ // a sentence that described the book sitting on top of code that
1549
+ // did not, which is the failure the rulebook policy exists for.
1550
+ //
1551
+ // matrixAttribute is the persona's Firewall WHOLE: the deck's for a
1552
+ // decker, Willpower for a living persona (p.251), and a
1553
+ // commlink's Device Rating for anyone else (p.222/p.234).
1554
+ return Math.max(0, this.intuition + this.matrixAttribute('firewall') + hot + this.augBonus('matrix') + this.qualityBonus('matrix') + this.formDefenseBonus + this.woundModifier - this.sustainingPenalty);
1425
1555
  }
1426
1556
  if (this.plane === 'astral') {
1427
1557
  return Math.max(0, this.intuition + Math.floor(this.magic / 2) + this.woundModifier - this.sustainingPenalty);
@@ -1443,14 +1573,21 @@ export class Player extends AbstractPlayer {
1443
1573
  return Math.max(0, 4 + 2 * (this.riggedDrone?.qualityBonus ?? 0));
1444
1574
  }
1445
1575
  if (this.plane === 'matrix') {
1576
+ // MATRIX DAMAGE IS RESISTED WITH DEVICE RATING + FIREWALL
1577
+ // (p.239 DATA SPIKE, p.228 MATRIX DAMAGE; RAG-checked
1578
+ // 2026-08-28). Neither half was right: the pool led with LOGIC,
1579
+ // which appears in neither, and halved the Firewall.
1446
1580
  if (this.isTechnomancer()) {
1447
- // Firewall Upgrade echo (p.258): the living persona hardens.
1448
- return Math.max(0, this.willpower + Math.floor(this.resonance / 2) + (this.hasMetamagic('firewall-upgrade') ? 1 : 0));
1581
+ // A living persona's Device Rating IS Resonance and its
1582
+ // Firewall IS Willpower (p.251) -- so Resonance + Willpower,
1583
+ // whole. p.229 confirms the rest of what we already do: a
1584
+ // technomancer has no Matrix condition monitor and takes it as
1585
+ // Stun. Firewall Upgrade echo (p.258) rides on top.
1586
+ return Math.max(0, this.resonance + this.willpower + (this.hasMetamagic('firewall-upgrade') ? 1 : 0));
1449
1587
  }
1450
- // The deck's Firewall soaks (half, limits-to-pool convention); a
1451
- // loaded Armor program hardens it further (+2, p.245 cited).
1588
+ // A loaded Armor program hardens it further (+2, p.245 cited).
1452
1589
  const deck = this.activeDeck ?? this.getCyberdeck();
1453
- return Math.max(0, this.logic + (deck?.matrixEdge('firewall') ?? 0) + (deck?.hasProgram('armor') ? 2 : 0));
1590
+ return Math.max(0, (deck?.deviceRating ?? 0) + this.matrixAttribute('firewall') + (deck?.hasProgram('armor') ? 2 : 0));
1454
1591
  }
1455
1592
  if (this.plane === 'astral') {
1456
1593
  return Math.max(0, this.willpower);
@@ -1483,10 +1620,28 @@ export class Player extends AbstractPlayer {
1483
1620
  // Overclocking echo (p.258): +1 while running hot -- the living
1484
1621
  // persona accelerated past spec.
1485
1622
  const hot = this.simMode === 'hot' ? 2 + (this.hasMetamagic('overclocking') ? 1 : 0) : 0;
1486
- // Canon Matrix initiative rides Data Processing -- the deck's DP
1487
- // edge joins the score (half, limits-to-pool convention).
1488
- const dpDeck = this.isTechnomancer() ? undefined : (this.activeDeck ?? this.getCyberdeck());
1489
- return Math.max(0, this.logic + this.intuition + Math.floor(this.resonance / 2) + hot + this.augBonus('matrix') + this.qualityBonus('matrix') + (dpDeck?.matrixEdge('dataProcessing') ?? 0) + this.woundModifier);
1623
+ // MATRIX VR INITIATIVE IS DATA PROCESSING + INTUITION (p.229-230
1624
+ // COLD-SIM / HOT-SIM VIRTUAL REALITY, p.474 the initiative chart;
1625
+ // RAG-checked 2026-08-28). Not Logic, which appears nowhere in it.
1626
+ //
1627
+ // The old expression led with Logic and then folded in half the
1628
+ // deck's Data Processing, which made it ACCIDENTALLY RIGHT for a
1629
+ // technomancer -- a living persona's Data Processing IS Logic
1630
+ // (p.251) -- and wrong for every decker. That is the hardest kind
1631
+ // of bug to have reported: the archetype it works for never sees
1632
+ // it, and the one it fails for has nothing to compare against.
1633
+ // matrixAttribute answers both cases from one place.
1634
+ //
1635
+ // WHAT IS STILL NOT CANON HERE, named rather than papered over:
1636
+ // the FRAME. SR5 initiative is a SCORE -- attribute + XD6 summed,
1637
+ // highest acts first -- and sim mode buys extra DICE (3D6 cold,
1638
+ // 4D6 hot, capped at 5D6). This engine rolls the whole thing as a
1639
+ // dice pool and counts hits (utilities/combat-exchange.ts), with
1640
+ // hot-sim as a flat bonus to that pool. That is a different
1641
+ // mechanic, not a wrong number, and it is on the board as its own
1642
+ // item. Fixing the attribute inside it is still an improvement;
1643
+ // dressing the frame in canon numbers would not be.
1644
+ return Math.max(0, this.matrixAttribute('dataProcessing') + this.intuition + hot + this.augBonus('matrix') + this.qualityBonus('matrix') + this.woundModifier);
1490
1645
  }
1491
1646
  if (this.plane === 'astral') {
1492
1647
  return Math.max(0, this.intuition * 2 + this.woundModifier);
@@ -1623,6 +1778,10 @@ export class Player extends AbstractPlayer {
1623
1778
  // THREADED COMPLEX FORMS (M4.15, see commands/thread.ts): the
1624
1779
  // technomancer's sustained workings ride the same -2 rail as spells.
1625
1780
  // Instant forms never land here.
1781
+ /** `hits` is the original threading test's hits -- the number Kill
1782
+ * Complex Form (p.250) eats away at. Optional so a form woven by
1783
+ * anything that predates that bookkeeping still reads sanely;
1784
+ * unravel.ts falls back to the Level. */
1626
1785
  sustainedForms = [];
1627
1786
  /** Diagnostics: +2 to matrix action pools while sustained. */
1628
1787
  get formMatrixBonus() {
@@ -1 +1 @@
1
- {"version":3,"file":"player.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/models/player.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAgB,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAI3D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAY9D,MAAM,CAAC,MAAM,YAAY,GAAkB,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;AAc/E,2DAA2D;AAC3D,MAAM,UAAU,eAAe,CAAC,KAAY;IAC1C,OAAO,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,CAAC;AAC/C,CAAC;AAoDD,MAAM,CAAC,MAAM,WAAW,GAAgB;IACtC,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS;IACxC,SAAS,EAAE,eAAe,EAAE,aAAa;IACzC,UAAU,EAAE,YAAY,EAAE,WAAW;IACrC,SAAS,EAAE,eAAe,EAAE,UAAU;IACtC,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,oBAAoB,EAAE,UAAU;IACpE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY;IAC/D,aAAa,EAAE,aAAa;IAC5B,WAAW,EAAE,UAAU;IACvB,WAAW,EAAE,cAAc,EAAE,iBAAiB;IAC9C,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU;CAChE,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAA2B,IAAI,GAAG,CAAY;IAC9E,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS;CAC3C,CAAC,CAAC;AA2DH,MAAM,OAAO,MAAO,SAAQ,cAAc;IAC/B,WAAW,CAAS;IACnB,gBAAgB,CAAO;IACvB,UAAU,CAAY;IACtB,UAAU,CAAkB;IAC5B,kBAAkB,GAAG,EAAE,CAAC;IACxB,iBAAiB,GAAqB,EAAE,CAAC;IACzC,MAAM,CAAS;IAEjB,SAAS,GAAW,CAAC,CAAC,CAAC,yBAAyB;IAExD,yEAAyE;IACzE,uEAAuE;IACvE,iEAAiE;IACjE,sEAAsE;IACtE,0EAA0E;IACnE,iBAAiB,CAAU;IAElC,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,oEAAoE;IACpE,kEAAkE;IAClE,oDAAoD;IAC7C,WAAW,CAA2D;IAE7E,uEAAuE;IACvE,oEAAoE;IACpE,uEAAuE;IAChE,aAAa,GAAG,KAAK,CAAC;IAE7B,qEAAqE;IACrE,wEAAwE;IACxE,qEAAqE;IACrE,qCAAqC;IAC9B,cAAc,CAAU;IACxB,cAAc,GAAG,CAAC,CAAC;IAE1B,mEAAmE;IACnE,sEAAsE;IACtE,wEAAwE;IACxE,qEAAqE;IACrE,oEAAoE;IAC7D,UAAU,GAAG,KAAK,CAAC;IAE1B,qEAAqE;IACrE,mEAAmE;IACnE,uEAAuE;IACvE,yDAAyD;IACzD,sEAAsE;IACtE,yEAAyE;IACzE,oCAAoC;IACpC,qEAAqE;IAC9D,UAAU,GAAgB,QAAQ,CAAC;IAE1C,wEAAwE;IACxE,uEAAuE;IACvE,qEAAqE;IACrE,2DAA2D;IAC3D,sEAAsE;IACtE,6DAA6D;IACtD,UAAU,CAAU;IACpB,gBAAgB,CAAU;IAC1B,SAAS,CAAU;IAE1B,oEAAoE;IACpE,sEAAsE;IACtE,uEAAuE;IACvE,iEAAiE;IACjE,yCAAyC;IAClC,cAAc,GAAG,CAAC,CAAC;IACnB,YAAY,GAAG,CAAC,CAAC;IACjB,iBAAiB,GAAG,CAAC,CAAC;IAE7B,wEAAwE;IACxE,uDAAuD;IACvD,+DAA+D;IAC/D,8BAA8B;IACvB,WAAW,GAAG,KAAK,CAAC;IAE3B;;;;;;;;;;;;;;OAcG;IACI,WAAW,CAAU;IAE5B;;;;;;;;;;;;;;;;;;;OAmBG;IACI,QAAQ,GAAG,KAAK,CAAC;IAExB,oEAAoE;IACpE,sEAAsE;IACtE,oEAAoE;IACpE,qEAAqE;IACrE,qDAAqD;IACrD,EAAE;IACF,mEAAmE;IACnE,sEAAsE;IACtE,oEAAoE;IACpE,qEAAqE;IACrE,sEAAsE;IACtE,oEAAoE;IACpE,oEAAoE;IACpE,oEAAoE;IACpE,mBAAmB;IAEnB;;;;;;OAMG;IACI,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IAE1C;;;;;;;;;;;;;;;;;;;;;OAqBG;IACI,OAAO,GAAqC,UAAU,CAAC;IAE9D,qEAAqE;IACrE,uEAAuE;IACvE,oEAAoE;IACpE,sEAAsE;IAC/D,aAAa,CAAU;IAE9B,sEAAsE;IACtE,qEAAqE;IACrE,mEAAmE;IACnE,uCAAuC;IAChC,MAAM,CAAqB;IAElC,yEAAyE;IACzE,yEAAyE;IACzE,wEAAwE;IACxE,oEAAoE;IACpE,mEAAmE;IACnE,oEAAoE;IACpE,oDAAoD;IAC7C,WAAW,GAAG,KAAK,CAAC;IAE3B,6EAA6E;IAE7E,yEAAyE;IACzE,wEAAwE;IACxE,kCAAkC;IAC3B,KAAK,GAAU,MAAM,CAAC;IAE7B,mEAAmE;IACnE,wEAAwE;IACxE,wEAAwE;IACxE,kDAAkD;IAC3C,QAAQ,CAAQ;IAEvB,wEAAwE;IACxE,sBAAsB;IACf,OAAO,CAAW;IAEzB,wEAAwE;IACxE,qEAAqE;IAC9D,WAAW,GAAG,CAAC,CAAC;IAEvB,yEAAyE;IACzE,sEAAsE;IACtE,oEAAoE;IACpE,qEAAqE;IACrE,oDAAoD;IAC7C,UAAU,CAAQ;IAEzB,qEAAqE;IACrE,YAAY;QACV,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;aACjC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;aAC5C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,2EAA2E;IAC3E,eAAe;QACb,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;aACpD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aAC5B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,+EAA+E;IAE/E,uEAAuE;IACvE,0EAA0E;IAC1E,gEAAgE;IACzD,SAAS,GAAG,KAAK,CAAC;IAEzB,qEAAqE;IACrE,uEAAuE;IACvE,oEAAoE;IACpE,kEAAkE;IAClE,sEAAsE;IACtE,8DAA8D;IAC9D,kEAAkE;IAClE,0CAA0C;IACnC,OAAO,GAAG,KAAK,CAAC;IAEvB,qEAAqE;IACrE,oEAAoE;IACpE,mEAAmE;IACnE,sEAAsE;IAC/D,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE9C,sEAAsE;IACtE,qEAAqE;IACrE,gEAAgE;IAChE,sEAAsE;IACtE,gEAAgE;IAChE,qEAAqE;IACrE,mEAAmE;IACnE,0BAA0B;IACnB,cAAc,GAAG,CAAC,CAAC;IAC1B,sEAAsE;IAC/D,iBAAiB,GAAG,CAAC,CAAC;IAE7B;;;;OAIG;IACH;;;;;;;;OAQG;IACH,aAAa;QACX,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC/B,IAAI,IAAI,CAAC,cAAc,EAAE;YAAE,OAAO,IAAI,CAAC;QACvC,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QACjC,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,IAAI,mBAAmB;QACrB,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,YAAY;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACjC,iEAAiE;QACjE,kEAAkE;QAClE,yDAAyD;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ;eACtC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC;eAClE,SAAS,CAAC;QACf,IAAI,IAAI,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9E,OAAO,IAAI,IAAI,IAAI,CAAC;IACtB,CAAC;IAED;;;;;OAKG;IACH,iBAAiB;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,MAAM,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,WAAW,GAAG,KAAK,GAAG,KAAK,CAAC,CAAC;IACvG,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,eAAe,EAAE,EAAE,UAAU,IAAI,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,EAAE,EAAE,YAAY,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,4EAA4E;IAC5E,gBAAgB,CAAC,KAAa;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,eAAe,EAAE,EAAE,SAAS,IAAI,KAAK,CAAC;IACpD,CAAC;IAED,4DAA4D;IAC5D,aAAa;QACX,OAAO,IAAI,CAAC,eAAe,EAAE,EAAE,WAAW,EAAE,IAAI,WAAW,CAAC;IAC9D,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,KAAa;QACvB,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAC5C,qEAAqE;QACrE,mEAAmE;QACnE,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC7E,oEAAoE;QACpE,oEAAoE;QACpE,kEAAkE;QAClE,mEAAmE;QACnE,iEAAiE;QACjE,kEAAkE;QAClE,+DAA+D;QAC/D,oEAAoE;QACpE,gEAAgE;QAChE,mEAAmE;QACnE,aAAa;QACb,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,IAAI,IAAI,CAAC,gBAAgB,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC5F,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC;IAED,4EAA4E;IAC5E,iBAAiB,CAAC,KAAa;QAC7B,OAAO,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;eAC5B,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,oEAAoE;IACpE,yEAAyE;IACzE,mEAAmE;IACnE,4DAA4D;IACrD,cAAc,GAAG,KAAK,CAAC;IAE9B,4DAA4D;IAC5D,kEAAkE;IAClE,qEAAqE;IACrE,8DAA8D;IAC9D,mEAAmE;IAC5D,YAAY,GAAG,KAAK,CAAC;IAE5B,uEAAuE;IACvE,uEAAuE;IACvE,0DAA0D;IACnD,IAAI,CAAS;IACb,OAAO,CAAS;IAChB,QAAQ,CAAS;IACjB,WAAW,CAAS;IACpB,KAAK,CAAS;IACd,QAAQ,CAAS;IACjB,SAAS,CAAS;IAClB,KAAK,CAAS;IACd,SAAS,CAAS;IAClB,QAAQ,CAAS;IACjB,IAAI,CAAS;IACb,SAAS,CAAS;IAClB,KAAK,CAAU;IAEtB,wEAAwE;IACxE,yEAAyE;IACzE,0CAA0C;IACnC,aAAa,GAAG,CAAC,CAAC;IAClB,cAAc,GAAG,KAAK,CAAC;IAE9B,wEAAwE;IACxE,wDAAwD;IAChD,YAAY,GAAG,CAAC,CAAC;IAEzB,yEAAyE;IACzE,qEAAqE;IACrE,oEAAoE;IACpE,uEAAuE;IACvE,4DAA4D;IACpD,UAAU,GAAG,CAAC,CAAC;IAEvB,YAAY,MAAgC;QAC1C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,aAAa,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,GAAG,IAAI,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,IAAI,EAAE,CAAC;QAEvD,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,KAAK,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAEnD,qEAAqE;QACrE,yDAAyD;QACzD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC;QAEpC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC/C,CAAC;IAED,iFAAiF;IAEjF,8BAA8B;IACvB,MAAM,CAAU,WAAW,GAAG,CAAC,CAAC;IAEvC,uEAAuE;IACvE,mEAAmE;IAC5D,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC;IAEpC,sEAAsE;IACtE,sEAAsE;IACtE,wEAAwE;IACjE,SAAS,GAAG,CAAC,CAAC;IACd,aAAa,GAAG,CAAC,CAAC;IAEzB,2DAA2D;IACpD,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IAEzC;;;;;;OAMG;IACI,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE7C,MAAM,CAAC,GAAW;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,4EAA4E;IAC5E,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,GAAqD;QAC9D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,KAAK,UAAU;YAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClF,2DAA2D;QAC3D,+DAA+D;QAC/D,mEAAmE;QACnE,6BAA6B;QAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QACpE,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,IAAkB;QACzB,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACrD,6DAA6D;QAC7D,mEAAmE;QACnE,oEAAoE;QACpE,mEAAmE;QACnE,4DAA4D;QAC5D,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAC/G,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;cAC1G,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrC,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS,CAAC,iBAAiB;YACtD,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,yEAAyE;IACzE,gEAAgE;IAChE,sEAAsE;IACtE,+DAA+D;IAC/D,kEAAkE;IAElE,2DAA2D;IACpD,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,UAAU,CAAC,GAAW;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,GAAW;QACpB,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO;QACpC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;YACf,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,YAAY,CAAC,IAAoF;QAC/F,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACjD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpF,KAAK,WAAW,CAAC,CAAC,OAAO,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,KAAK,QAAQ,CAAC,CAAC,OAAO,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,KAAK,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACtF,KAAK,UAAU,CAAC,CAAC,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,KAAK,MAAM,CAAC,CAAC,OAAO,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7C,KAAK,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,uEAAuE;IACvE,oEAAoE;IACpE,0CAA0C;IAClC,oBAAoB,GAAG,KAAK,CAAC;IAErC,yEAAyE;IACzE,sBAAsB;QACpB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,oBAAoB;YAAE,OAAO,CAAC,CAAC;QACnF,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,OAAO,CAAC,CAAC;IACX,CAAC;IAED,yEAAyE;IACzE,IAAI,UAAU;QACZ,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC;YAAE,OAAO,IAAI,CAAC;QACnD,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC;YAAE,OAAO,IAAI,CAAC;QAChG,OAAO,CAAC,CAAC;IACX,CAAC;IAED,qEAAqE;IACrE,sEAAsE;IACtE,wEAAwE;IACjE,eAAe,GAAG,KAAK,CAAC;IAE/B,iGAAiG;IACjG,qEAAqE;IACrE,sEAAsE;IACtE,oEAAoE;IACpE,sEAAsE;IACtE,iEAAiE;IAE1D,eAAe,GAAG,CAAC,CAAC;IAE3B,sEAAsE;IAC/D,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAEtC,YAAY,CAAC,GAAW;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAED,wEAAwE;IACxE,sEAAsE;IACtE,mEAAmE;IACnE,uEAAuE;IACvE,kEAAkE;IAClE,mEAAmE;IACnE,gEAAgE;IAChE,qEAAqE;IACrE,6CAA6C;IAE7C,oEAAoE;IAC7D,WAAW,GAAG,CAAC,CAAC;IAEvB,qEAAqE;IACrE,uDAAuD;IAC/C,iBAAiB,GAAa,EAAE,CAAC;IAEzC,6EAA6E;IAC7E,YAAY,CAAC,MAAc;QACzB,IAAI,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,KAAK,CAAC;QAC1D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,2EAA2E;IAC3E,IAAI,gBAAgB;QAClB,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,kBAAkB,EAAE,iBAAiB,CAAC;aAC7D,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;cACxC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC;QACzE,MAAM,KAAK,GAAG,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACtF,OAAO,IAAI,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC5E,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;cACrD,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;;;;OAKG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IAED,2EAA2E;IAE3E,8EAA8E;IACvE,MAAM,GAAuC,EAAE,CAAC;IAEvD,iEAAiE;IACjE,qEAAqE;IACrE,8CAA8C;IACvC,KAAK,GAAG,CAAC,CAAC;IAEjB;;;;;OAKG;IACH,WAAW,CAAC,IAAe;QACzB,sEAAsE;QACtE,sDAAsD;QACtD,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;YAAE,OAAO,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,OAAO,QAAQ,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC/D,OAAO,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;;OAIG;IACH,iBAAiB;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACjE,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9B,IAAI,MAAM,CAAC,SAAS,EAAE;YAAE,OAAO,UAAU,CAAC;QAC1C,iEAAiE;QACjE,iEAAiE;QACjE,8DAA8D;QAC9D,sCAAsC;QACtC,OAAO,kFAAkF,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC9H,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,QAAQ,CAAC;IACf,CAAC;IAEO,mBAAmB;QACzB,OAAO;YACL,IAAI,EAAE;gBACJ,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,IAAI;aACf;YACD,KAAK,EAAE;gBACL,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,IAAI;gBACjB,YAAY,EAAE,IAAI;gBAClB,aAAa,EAAE,IAAI;gBACnB,SAAS,EAAE,IAAI;aAChB;YACD,IAAI,EAAE;gBACJ,KAAK,EAAE,IAAI;gBACX,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,IAAI;aACf;YACD,IAAI,EAAE;gBACJ,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,IAAI;aACjB;YACD,IAAI,EAAE;gBACJ,UAAU,EAAE,IAAI;gBAChB,WAAW,EAAE,IAAI;gBACjB,WAAW,EAAE,IAAI;gBACjB,YAAY,EAAE,IAAI;gBAClB,SAAS,EAAE,IAAI;aAChB;YACD,MAAM,EAAE;gBACN,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,IAAI;aACjB;YACD,QAAQ,EAAE;gBACR,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,IAAI;aACb;YACD,SAAS,EAAE;gBACT,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,IAAI;aACb;SACF,CAAC;IACJ,CAAC;IAGD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,IAAI,eAAe,CAAC,IAAU;QAC5B,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YACnC,mEAAmE;YACnE,iEAAiE;YACjE,8DAA8D;YAC9D,gEAAgE;YAChE,iDAAiD;YACjD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,+DAA+D;YAC/D,4CAA4C;YAC5C,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;YAC7B,gEAAgE;YAChE,qCAAqC;YACrC,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;YAC1B,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAC/B,CAAC;IAED,2DAA2D;IAC3D,oEAAoE;IACpE,mEAAmE;IAC5D,MAAM,CAAU;IAEvB;;;;;;;;;;;OAWG;IACI,SAAS,CAAU;IAE1B;;;;;;;;;;;;;;;;;;OAkBG;IACI,MAAM,CAAuC;IAEpD;;;;;+BAK2B;IACpB,QAAQ,CAAU;IAEzB,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,SAAS,CAAC,YAA6B;QACzC,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC;IACjC,CAAC;IAED,wEAAwE;IACxE,oEAAoE;IACpE,mEAAmE;IACnE,yDAAyD;IACjD,mBAAmB,CAAU;IAErC,IAAI,iBAAiB;QACnB,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,mBAAmB,CAAC;QAC5E,kEAAkE;QAClE,qEAAqE;QACrE,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACjC,CAAC;IAED,IAAI,iBAAiB,CAAC,MAAc;QAClC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED,IAAI,aAAa;QACf,IAAI,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QAC9C,qEAAqE;QACrE,iEAAiE;QACjE,oEAAoE;QACpE,sEAAsE;QACtE,qEAAqE;QACrE,aAAa;QACb,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,KAAK;gBAAE,SAAS;YACrB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAoB,EAAE,CAAC;gBAC3D,IAAI,IAAI,EAAE,CAAC;oBACT,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,YAAY,CAAC,IAAU;QACrB,IAAI,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;YAC3E,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,eAAe,CAAC,CAAC;IACvE,CAAC;IAED,eAAe,CAAC,IAAU;QACxB,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,IAAI,2BAA2B,CAAC,CAAC;YACnE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,IAAI,2BAA2B,CAAC,CAAC;QAC5E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,IAAU;QACd,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,OAAO,kBAAkB,IAAI,CAAC,IAAI,qBAAqB,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,OAAO,mBAAmB,IAAI,CAAC,IAAI,GAAG,CAAC;QACzC,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,GAAG,IAAI,CAAC,IAAI,wCAAwC,CAAC;QAC9D,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAExC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,eAAe,KAAK,+BAA+B,CAAC;QAC7D,CAAC;QAED,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,UAAU,GAAG,EAAE,CAAC;QAEpB,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,YAAY,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACpC,OAAO,oBAAoB,IAAI,CAAC,IAAI,qBAAqB,KAAK,IAAI,IAAI,QAAQ,CAAC;YACjF,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAChC,UAAU,GAAG,gBAAgB,YAAY,CAAC,IAAI,GAAG,CAAC;QACpD,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAE3B,qEAAqE;QACrE,sEAAsE;QACtE,gEAAgE;QAChE,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,OAAO,aAAa,IAAI,CAAC,IAAI,sBAAsB,UAAU,GAAG,IAAI,CAAC,uCAAuC,CAAC,EAAE,CAAC;QAClH,CAAC;QAED,OAAO,gBAAgB,IAAI,CAAC,IAAI,YAAY,KAAK,IAAI,IAAI,SAAS,UAAU,EAAE,CAAC;IACjF,CAAC;IAED,0DAA0D;IAC1D,MAAM,CAAC,YAAY,CAAC,KAA4B,EAAE,IAAY;QAC5D,OAAO,CAAC,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,UAAU,CAAC,IAAI,IAAI,KAAK,QAAQ,CAAC;IAC9E,CAAC;IAGD,OAAO,CAAC,KAAa;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACpD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;YACjC,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,wCAAwC;QACxC,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACjE,IAAI,CAAC,KAAK;gBAAE,SAAS;YAErB,KAAK,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,IAAI,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;oBAC7D,OAAO,IAAI,CAAC,aAAa,CAAC,SAAkC,EAAE,QAAQ,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,6BAA6B,KAAK,IAAI,CAAC;IAChD,CAAC;IAEM,sBAAsB,CAAC,KAAa;QACzC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAEvC,QAAQ,UAAU,EAAE,CAAC;YACjB,OAAO;YACT,KAAK,QAAQ,CAAC,MAAM,CAAC;YACrB,KAAK,QAAQ,CAAC,GAAG;gBACf,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YAC1C,KAAK,SAAS,CAAC;YACf,KAAK,SAAS,CAAC;YACf,KAAK,SAAS;gBACZ,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACzC,KAAK,UAAU,CAAC;YAChB,KAAK,SAAS;gBACZ,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACzC,KAAK,MAAM,CAAC;YACZ,KAAK,YAAY;gBACf,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YAC1C,KAAK,QAAQ,CAAC;YACd,KAAK,YAAY;gBACf,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACzC,KAAK,QAAQ,CAAC,QAAQ;gBACpB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAE3C,QAAQ;YACV,KAAK,QAAQ,CAAC,QAAQ,CAAC;YACvB,KAAK,OAAO,CAAC;YACb,KAAK,QAAQ,CAAC;YACd,KAAK,KAAK;gBACR,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAC9C,KAAK,QAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,QAAQ,CAAC,SAAS,CAAC;YACxB,KAAK,QAAQ,CAAC,aAAa,CAAC;YAC5B,KAAK,YAAY;gBACf,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAC/C,KAAK,YAAY,CAAC;YAClB,KAAK,aAAa;gBAChB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAC/C,KAAK,cAAc,CAAC;YACpB,KAAK,gBAAgB;gBACnB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;YACjD,KAAK,UAAU;gBACb,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAC9C,KAAK,uBAAuB;gBAC1B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;YAClD,KAAK,wBAAwB;gBAC3B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;YACnD,KAAK,WAAW;gBACd,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAE7C,OAAO;YACT,KAAK,QAAQ,CAAC,QAAQ,CAAC;YACvB,KAAK,OAAO,CAAC;YACb,KAAK,UAAU;gBACb,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YAC1C,KAAK,WAAW,CAAC;YACjB,KAAK,eAAe;gBAClB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAC7C,KAAK,gBAAgB;gBACnB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;YAC5C,KAAK,iBAAiB;gBACpB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAE3C,OAAO;YACT,KAAK,QAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,cAAc,CAAC;YACpB,KAAK,OAAO;gBACV,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YAC1C,KAAK,aAAa;gBAChB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAC9C,KAAK,cAAc;gBACjB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;YAE7C,OAAO;YACT,KAAK,QAAQ,CAAC,QAAQ,CAAC;YACvB,KAAK,YAAY,CAAC;YAClB,KAAK,sBAAsB;gBACzB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;YAChD,KAAK,uBAAuB;gBAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;YACjD,KAAK,cAAc;gBACjB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;YAC/C,KAAK,eAAe;gBAClB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;YAChD,KAAK,QAAQ,CAAC,SAAS;gBACrB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAE5C,iBAAiB;YACnB,KAAK,QAAQ,CAAC,MAAM,CAAC;YACrB,KAAK,OAAO,CAAC;YACb,KAAK,YAAY;gBACf,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAChD,KAAK,aAAa;gBAChB,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;YAC/C,0DAA0D;YAC1D,+DAA+D;YAC/D,8DAA8D;YAC9D,8DAA8D;YAC9D,yDAAyD;YACzD,2DAA2D;YAC3D,+DAA+D;YAC/D,qCAAqC;YACvC,KAAK,OAAO,CAAC;YACb,KAAK,WAAW,CAAC;YACjB,KAAK,UAAU,CAAC;YAChB,KAAK,OAAO;gBACV,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAChD,KAAK,aAAa;gBAChB,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;YAE/C,YAAY;YACd,KAAK,QAAQ,CAAC,MAAM;gBAClB,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC/C,KAAK,kBAAkB,CAAC;YACxB,KAAK,oBAAoB;gBACvB,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC/C,KAAK,gBAAgB;gBACnB,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAE3C,aAAa;YACf,KAAK,QAAQ,CAAC,MAAM,CAAC;YACrB,KAAK,QAAQ,CAAC,WAAW,CAAC;YAC1B,KAAK,QAAQ,CAAC,YAAY;gBACxB,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAChD,KAAK,mBAAmB,CAAC;YACzB,KAAK,qBAAqB;gBACxB,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAChD,KAAK,iBAAiB;gBACpB,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAE9C;gBACE,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IAGM,QAAQ,CAAC,IAAU;QACxB,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAoB,CAAC,CAAC;IACrE,CAAC;IAEO,aAAa,CAAC,KAA4B,EAAE,IAAY;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAExC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,0CAA0C,KAAK,GAAG,CAAC;QAC5D,CAAC;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,8BAA8B,KAAK,IAAI,IAAI,QAAQ,CAAC;QAC7D,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QACjC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACtB,wEAAwE;QACxE,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC;YAAE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAE/D,OAAO,kBAAkB,aAAa,CAAC,IAAI,cAAc,KAAK,IAAI,IAAI,QAAQ,CAAC;IACjF,CAAC;IAGD,IAAI,CAAC,KAAa,EAAE,OAAe,EAAE,IAAiD;QACpF,qEAAqE;QACrE,oEAAoE;QACpE,qEAAqE;QACrE,mEAAmE;QACnE,+DAA+D;QAC/D,gCAAgC;QAChC,MAAM,QAAQ,GAAG,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,iBAAiB,KAAK,KAAK,CAAC;QACnE,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAAE,OAAO;QAClD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,UAAU,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD,qEAAqE;QACrE,sEAAsE;QACtE,oEAAoE;QACpE,mEAAmE;QACnE,+BAA+B;QAC/B,kEAAkE;QAClE,gEAAgE;QAChE,iEAAiE;QACjE,8DAA8D;QAC9D,0DAA0D;QAC1D,IAAI,IAAI,CAAC,iBAAiB,KAAK,KAAK,IAAI,KAAK,CAAC,eAAe,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;YACvF,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,SAAS,IAAI,KAAK,CAAC,IAAI,kBAAkB,OAAO,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAClH,OAAO;QACT,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,KAAK,CAAC,IAAI,gBAAgB,OAAO,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1I,CAAC;IACD,GAAG,CAAC,KAAa,EAAE,IAAY,EAAE,OAAgB;QAC/C,IAAI,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,aAAa,CAAC,IAAY,EAAE,OAAgB;QAC1C,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,IAAI,cAAc,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAClF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACtD,CAAC;IAEQ,aAAa,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAqD,EAAE,EAAE;QACvG,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC,CAAC;IAEF,sEAAsE;IACtE,uEAAuE;IACvE,+DAA+D;IAC/D,mDAAmD;IACnC,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAEjD,SAAS,CAAC,IAAU;QAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,sCAAsC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,SAAS;QACP,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,aAAa,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,oFAAoF;IAE5E,MAAM,CAAU,gBAAgB,GAA0B,IAAI,GAAG,CAAC;QACxE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM;QAC3E,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM;KACvF,CAAC,CAAC;IAEH,IAAI,iBAAiB;QACnB,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAI,YAAY;QACd,qEAAqE;QACrE,qEAAqE;QACrE,uCAAuC;QACvC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,IAAI,aAAa;QACf,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACzD,kEAAkE;QAClE,uEAAuE;QACvE,qEAAqE;QACrE,yDAAyD;QACzD,qEAAqE;QACrE,uEAAuE;QACvE,MAAM,MAAM,GAAG,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;cAC7E,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;QAClD,kEAAkE;QAClE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;QAC7D,uEAAuE;QACvE,iDAAiD;QACjD,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACtD,OAAO,CAAC,KAAK,CAAC;IAChB,CAAC;IAED,wCAAwC;IACxC,MAAM;QACJ,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,iBAAiB,CAAC;IACrD,CAAC;IAED,mEAAmE;IACnE,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,CAAC;IAC9C,CAAC;IAED,yEAAyE;IACzE,eAAe;QACb,OAAO,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;IAC/C,CAAC;IAED,+DAA+D;IAC/D,UAAU,CAAC,KAAa;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC;QAChF,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,KAAa;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACzE,OAAO,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,KAAa;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC;QAClD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC;QACxB,MAAM,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC;QAC9B,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,+BAA+B;IAC/B,gBAAgB;QACd,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAChD,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,KAAK,MAAM,IAAI,GAAG,GAAG,CAAC;IAC/E,CAAC;IAED;;;;;;OAMG;IACH,QAAQ,CAAC,KAAa;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3E,OAAO,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;IAClC,CAAC;IAED,4DAA4D;IAC5D,WAAW;QACT,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;QAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9C,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,KAAK,MAAM,IAAI,GAAG,GAAG,CAAC;IAC/E,CAAC;IAED;;;;;OAKG;IACH,gBAAgB;QACd,sEAAsE;QACtE,kEAAkE;QAClE,+DAA+D;QAC/D,iEAAiE;QACjE,+DAA+D;QAC/D,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,YAAY,IAAI,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC,UAAU;gBACpB,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,OAAO,eAAe,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE;gBAClG,CAAC,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;QAC5D,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,oEAAoE;YACpE,gEAAgE;YAChE,yCAAyC;YACzC,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1B,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAClI,CAAC;YACD,gEAAgE;YAChE,iEAAiE;YACjE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpD,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;QAClI,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;QACtG,CAAC;QAED,mEAAmE;QACnE,iEAAiE;QACjE,kEAAkE;QAClE,sEAAsE;QACtE,kEAAkE;QAClE,2DAA2D;QAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACjE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,uDAAuD;YACvD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,GAAG,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACvH,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC;QAClC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAC5G,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;IAClG,CAAC;IAED,4DAA4D;IAC5D,gBAAgB;QACd,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI,CAAC;IACvF,CAAC;IAED;wCACoC;IACpC,UAAU;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACvC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,sEAAsE;IACtE,UAAU;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACvC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,+DAA+D;IAC/D,aAAa;QACX,qEAAqE;QACrE,oEAAoE;QACpE,iEAAiE;QACjE,iEAAiE;QACjE,gEAAgE;QAChE,wBAAwB;QACxB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,KAAK;gBAAE,SAAS;YACrB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAoB,EAAE,CAAC;gBAC3D,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAoB,CAAC;oBAAE,SAAS;gBAC/E,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,MAAM;oBAAE,KAAK,IAAI,CAAC,CAAC;qBAC7C,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,MAAM;oBAAE,KAAK,IAAI,CAAC,CAAC;qBAClD,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,MAAM;uBACzE,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ;oBAAE,KAAK,IAAI,CAAC,CAAC;;oBACvF,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,aAAa;QACX,iEAAiE;QACjE,mEAAmE;QACnE,qEAAqE;QACrE,yDAAyD;QACzD,oEAAoE;QACpE,uDAAuD;QACvD,oEAAoE;QACpE,sEAAsE;QACtE,sDAAsD;QACtD,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,4DAA4D;YAC5D,gDAAgD;YAChD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;YACvF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9J,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,8DAA8D;YAC9D,+DAA+D;YAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;YAC3F,gEAAgE;YAChE,4DAA4D;YAC5D,4DAA4D;YAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC3S,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,iEAAiE;YACjE,oDAAoD;YACpD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC;YAC7F,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,WAAW,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9H,CAAC;QACD,mEAAmE;QACnE,qEAAqE;QACrE,oEAAoE;QACpE,sDAAsD;QACtD,uEAAuE;QACvE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5G,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9G,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,GAAG,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACrN,CAAC;IAED;;;;OAIG;IACH,oBAAoB;QAClB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5G,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACtJ,CAAC;IAED,cAAc;QACZ,yDAAyD;QACzD,sEAAsE;QACtE,sEAAsE;QACtE,kEAAkE;QAClE,oEAAoE;QACpE,oEAAoE;QACpE,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC/K,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,gEAAgE;YAChE,kEAAkE;YAClE,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;YAC5F,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC/Q,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAChH,CAAC;QACD,qEAAqE;QACrE,mEAAmE;QACnE,oEAAoE;QACpE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,CAAC;IACtK,CAAC;IAED,WAAW;QACT,uEAAuE;QACvE,qEAAqE;QACrE,oEAAoE;QACpE,qEAAqE;QACrE,oEAAoE;QACpE,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1B,6DAA6D;gBAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxH,CAAC;YACD,iEAAiE;YACjE,6DAA6D;YAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7G,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAClI,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB;QACf,oEAAoE;QACpE,iEAAiE;QACjE,oEAAoE;QACpE,qEAAqE;QACrE,EAAE;QACF,sEAAsE;QACtE,sEAAsE;QACtE,oEAAoE;QACpE,kEAAkE;QAClE,8CAA8C;QAC9C,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,gEAAgE;YAChE,iCAAiC;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzF,iEAAiE;YACjE,0DAA0D;YAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;YAC5F,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;QACpN,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC;QAC5C,oEAAoE;QACpE,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QACvF,sEAAsE;QACtE,sDAAsD;QACtD,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;IAClI,CAAC;IAED;;;;;OAKG;IACH,gBAAgB;QACd,IAAI,CAAC,IAAI,CAAC,cAAc;YAAE,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,wEAAwE;IACxE,gEAAgE;IACzD,kBAAkB,GAAG,CAAC,CAAC;IAE9B,sEAAsE;IACtE,uEAAuE;IACvE,wEAAwE;IACxE,uEAAuE;IACvE,uEAAuE;IACvE,uEAAuE;IACvE,sEAAsE;IACtE,iCAAiC;IAEjC,4DAA4D;IACrD,YAAY,GAAG,IAAI,CAAC;IACpB,cAAc,GAAG,IAAI,CAAC;IACtB,YAAY,GAAG,CAAC,CAAC;IACjB,WAAW,GAAG,CAAC,CAAC;IACf,cAAc,GAAG,CAAC,CAAC;IACnB,aAAa,GAAG,CAAC,CAAC;IAE1B,gEAAgE;IAChE,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;IAClD,CAAC;IAED,uEAAuE;IACvE,mEAAmE;IACnE,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,kFAAkF;IAClF,OAAO;QACL,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,iFAAiF;IACjF,SAAS;QACP,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,yDAAyD;IACzD,gBAAgB,CAAC,IAAwB,EAAE,KAAa;QACtD,IAAI,IAAI,KAAK,QAAQ;YAAE,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;;YAC5D,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,UAAU,GAAG,IAAI;QAC3B,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAC3D,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,oEAAoE;QACpE,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,iFAAiF;IAEjF,wEAAwE;IACxE,yEAAyE;IACzE,yEAAyE;IACzE,sEAAsE;IACtE,sEAAsE;IACtE,uEAAuE;IACvE,qEAAqE;IACrE,gCAAgC;IAEhC,uEAAuE;IAC/D,MAAM,CAAU,eAAe,GAAG,CAAC,CAAC;IAE5C;;oEAEgE;IAChE,UAAU;QACR,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,mGAAmG;IACnG,cAAc;QACZ,OAAO,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,sEAAsE;IACtE,qEAAqE;IACrE,8BAA8B;IACtB,eAAe,GAAG,CAAC,CAAC;IAE5B,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,iBAAiB,CAAC,KAAa;QAC7B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,uEAAuE;IACvE,mEAAmE;IACnE,wEAAwE;IACxE,yDAAyD;IAClD,qBAAqB,GAAG,KAAK,CAAC;IAC9B,iBAAiB,GAAG,KAAK,CAAC;IAEjC;;;4CAGwC;IACjC,gBAAgB,CAA0D;IAEjF;;mEAE+D;IACxD,oBAAoB,CAA0D;IAErF,8DAA8D;IAC9D,qEAAqE;IACrE,iCAAiC;IAC1B,cAAc,GAAqC,EAAE,CAAC;IAC7D,8DAA8D;IAC9D,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,yDAAyD;IACzD,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,iBAAiB;QACnB,kEAAkE;QAClE,iEAAiE;QACjE,oEAAoE;QACpE,oEAAoE;QACpE,sEAAsE;QACtE,8DAA8D;QAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvF,OAAO,SAAS;cACZ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;cACpC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;cAChC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;cAC/B,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;cACnC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;cAC/B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;cAC1B,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,qEAAqE;IACrE,wEAAwE;IACxE,gEAAgE;IAChE,gDAAgD;IACzC,gBAAgB,GAAG,KAAK,CAAC;IAEhC,qEAAqE;IACrE,oEAAoE;IACpE,kEAAkE;IAC3D,QAAQ,GAAG,KAAK,CAAC;IAExB,iFAAiF;IACjF,qEAAqE;IACrE,qEAAqE;IACrE,kEAAkE;IAClE,wCAAwC;IACjC,WAAW,CAAQ;IAE1B,sFAAsF;IACtF,IAAI,UAAU;QACZ,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;QAC3B,IAAI,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QACrB,OAAO,8CAA8C,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC;IACjG,CAAC;IAED,8DAA8D;IAC9D,kEAAkE;IAClE,kEAAkE;IAC3D,gBAAgB,GAAG,CAAC,CAAC;IAE5B,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC;IAC5C,CAAC;IAED,wEAAwE;IACxE,iCAAiC;IAC1B,cAAc,GAAG,KAAK,CAAC;IAE9B,iEAAiE;IACjE,wEAAwE;IACxE,kEAAkE;IAC3D,aAAa,GAAG,KAAK,CAAC;IAE7B,0EAA0E;IAC1E,oBAAoB;QAClB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,sEAAsE;IACtE,uEAAuE;IACvE,uEAAuE;IACvE,mDAAmD;IAC5C,QAAQ,CAAkC;IAEjD,oEAAoE;IACpE,wEAAwE;IACxE,iEAAiE;IAC1D,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IAEvC,yEAAyE;IACzE,YAAY;QACV,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;aACjC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,KAAK,CAAC;aAC1C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,YAAY;QACV,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QACtD,uEAAuE;QACvE,uEAAuE;QACvE,sEAAsE;QACtE,oDAAoD;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;YAC5B,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAC/F,CAAC,CAAC,MAAM,CAAC,eAAe,GAAG,UAAU,CAAC;QACxC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,UAAU,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACtF,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,SAAiB;QAC1B,mEAAmE;QACnE,sEAAsE;QACtE,2BAA2B;QAC3B,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC;QAC7B,IAAI,IAAI,CAAC,UAAU,EAAE;YAAE,OAAO,IAAI,CAAC;QACnC,MAAM,MAAM,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;QACvC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAC5C,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ;YAChC,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAChF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC,CAAC,oCAAoC;QAClE,OAAO,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACjE,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,YAAY;YACpC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ;YAChC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,KAAK,CAC9B,CAAC;IACJ,CAAC;IAED,mFAAmF;IAEnF,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,IAAI,gBAAgB,CAAC,OAAyB;QAC5C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;IACnC,CAAC;IAED,IAAI,QAAQ;QACV,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YAChC,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3E,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC;IAED,IAAI,QAAQ,CAAC,MAAc;QACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,yCAAyC;IACjF,CAAC;IAED,cAAc,CAAC,KAAa;QAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAClF,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;gBAClB,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAC9C,CAAC;iBAAM,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;gBACzB,SAAS,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC;YAClD,CAAC;YAED,IAAI,SAAS,KAAK,CAAC;gBAAE,MAAM;QAC7B,CAAC;QAED,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC;IAC9B,CAAC"}
1
+ {"version":3,"file":"player.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/models/player.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,7 @@ export interface IRoomConstructorConfig {
42
42
  levels?: IGridSynthesisLevel[];
43
43
  hasNode?: boolean;
44
44
  nodeAccess?: 'wireless' | 'wired';
45
+ hostRating?: number;
45
46
  warded?: boolean;
46
47
  watched?: boolean;
47
48
  supportedLifestyles?: {
@@ -183,6 +184,59 @@ export declare class Room extends AbstractRoom {
183
184
  clearTerrainFor(deviceName: string): string | undefined;
184
185
  hasNode: boolean;
185
186
  nodeAccess: 'wireless' | 'wired';
187
+ /**
188
+ * HOST RATING (SR5 p.247 HOST ATTRIBUTES, RAG-checked 2026-08-28) --
189
+ * 1 to 12, and the one number a host is described BY. The book's
190
+ * sample table: 1-2 personal sites and pirate archives, 3-4 low-end
191
+ * commercial and private business, 5-6 social media and local police,
192
+ * 7-8 local corporate hosts and low-level government, 9-10 regional
193
+ * corporate and secure sites, 11-12 megacorporate HQ, military
194
+ * command, clandestine head office.
195
+ *
196
+ * Reported by Deditri (BTyfgybBnD2hjDmoN): the grid map named every
197
+ * place "host node" or "thin grid" and never said how hard it was, so
198
+ * a pawnshop and an arcology read identically from the outside.
199
+ *
200
+ * DEFAULT_HOST_RATING is a DEFAULT, not a rule -- the book rates
201
+ * hosts, it does not say what an unrated one is. 3 puts an unspecified
202
+ * host in the "low-end commercial, private business" band, which is
203
+ * what most run locations are; a seed that cares should say so.
204
+ */
205
+ static readonly DEFAULT_HOST_RATING = 3;
206
+ static readonly MIN_HOST_RATING = 1;
207
+ static readonly MAX_HOST_RATING = 12;
208
+ hostRating: number;
209
+ /** A seeded rating held to the book's 1-12 band; anything absent,
210
+ * fractional or out of range falls back to the default rather than
211
+ * producing a host the rules have no shape for. */
212
+ static clampHostRating(rating: number | undefined): number;
213
+ /**
214
+ * THE HOST'S MATRIX ATTRIBUTES, derived from its rating (SR5 p.247):
215
+ * "usually (Host Rating), (Host Rating + 1), (Host Rating + 2), and
216
+ * (Host Rating + 3), in any order."
217
+ *
218
+ * The book leaves the ORDER to the gamemaster and gives one worked
219
+ * example -- a Rating 4 host with Attack 5, Sleaze 4, Data Processing
220
+ * 7, Firewall 6. That ordering is used here rather than one of my own
221
+ * invention, so the default is the book's own illustration. A seed
222
+ * that wants a differently-shaped host should say so explicitly when
223
+ * that field exists; "any order" means no ordering is more canon than
224
+ * another, which is exactly why this one is not presented as a rule.
225
+ *
226
+ * WHAT THESE DO NOT DO YET, so the next reader does not go hunting:
227
+ * nothing. The only mechanical use SR5 gives a Host Rating is IC
228
+ * rolling Host Rating x 2 (p.247-248), and this engine has no IC --
229
+ * `hostAlert` is a flag and "ice hunting" is prose; nothing rolls on
230
+ * the host's side anywhere. Host intrusion is a threshold frame with
231
+ * no opposed roll to put these into. Filed as its own item; see the
232
+ * note on hostRating above.
233
+ */
234
+ hostAttributes(): {
235
+ attack: number;
236
+ sleaze: number;
237
+ dataProcessing: number;
238
+ firewall: number;
239
+ };
186
240
  hostCracked: boolean;
187
241
  hostMarksBy: Map<string, number>;
188
242
  hostAlert: boolean;
@@ -195,6 +249,42 @@ export declare class Room extends AbstractRoom {
195
249
  addActor(actor: Player): void;
196
250
  removeActor(actor: Player): void;
197
251
  getActors(): (Player | NPC)[];
252
+ /**
253
+ * WHEN A ROOM ANSWERS AS A CROWD (hiRLexr3xJjQM2jP4: "that was funny,
254
+ * but a little silly... Brick and Marla were standing next to
255
+ * eachother").
256
+ *
257
+ * Brick walked to the bar, Marla was already there, and both
258
+ * acknowledged the same handoff. The adjacency the report names is
259
+ * not the fault -- two people at a bar ARE adjacent. The silliness is
260
+ * one event narrated twice.
261
+ *
262
+ * WHY IT HAPPENS, AND WHY THE BRIEF'S OWN RULE CANNOT STOP IT. Room
263
+ * speech fans out in PARALLEL and un-awaited (see say() below): every
264
+ * listener's hear() is launched at once and each NPC calls the AI on
265
+ * its own. The brief already says "Do NOT repeat, rephrase, or re-ask
266
+ * anything you have already said" -- but at the moment each NPC is
267
+ * asked, the other's reply DOES NOT EXIST YET. Cross-NPC duplication
268
+ * is structurally invisible to both of them.
269
+ *
270
+ * SO THE FIX IS TO TELL THEM THEY ARE NOT ALONE, and nothing more.
271
+ * The fan-out stays un-awaited: serialising the calls would buy
272
+ * coordination with latency and a duller room, and a responder
273
+ * throttle would silence people who have something to say.
274
+ *
275
+ * IT DISCOURAGES RESTATING, NOT SPEAKING, and that distinction is the
276
+ * whole risk. say.ts's overheard-CALL note tells a bystander to stay
277
+ * silent unless it concerns them, which is right THERE -- you are
278
+ * hearing half of a private conversation. A bar handoff is the
279
+ * opposite situation, and borrowing that instruction would trade a
280
+ * mild silliness for a dead room. The reporter laughed; a room that
281
+ * stopped talking would not be an improvement on a laugh.
282
+ *
283
+ * NPC recipients only: Player.hear PRINTS what it is given, so a
284
+ * system note appended for a human would land verbatim in their
285
+ * transcript.
286
+ */
287
+ private crowdNote;
198
288
  say(actor: Player, message: string): void;
199
289
  addExit(direction: Direction, targetRoom: Room, keyItemOrSolution?: string): void;
200
290
  attemptUnlockExit(direction: Direction, itemOrSolution: string): string;