@maka/maka-cli 5.74.0 → 5.75.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.
- package/bundle/typescript/package.json +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/backlog.js +4 -4
- package/bundle/typescript/src/commands/game/sideQuest/commands/backlog.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/hack.js +3 -3
- package/bundle/typescript/src/commands/game/sideQuest/commands/hack.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/look.js +12 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/look.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/mark.js +4 -4
- package/bundle/typescript/src/commands/game/sideQuest/commands/mark.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/move.d.ts +42 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/move.js +288 -46
- package/bundle/typescript/src/commands/game/sideQuest/commands/move.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/rest.js +8 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/rest.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/search.js +20 -15
- package/bundle/typescript/src/commands/game/sideQuest/commands/search.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/take.js +10 -2
- package/bundle/typescript/src/commands/game/sideQuest/commands/take.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/tap.js +9 -8
- package/bundle/typescript/src/commands/game/sideQuest/commands/tap.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.d.ts +83 -0
- package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.js +253 -0
- package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/factories/repro-scene.js +116 -3
- package/bundle/typescript/src/commands/game/sideQuest/factories/repro-scene.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/game.d.ts +39 -0
- package/bundle/typescript/src/commands/game/sideQuest/game.js +85 -14
- package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/headless.js +5 -3
- package/bundle/typescript/src/commands/game/sideQuest/headless.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/models/player.d.ts +35 -0
- package/bundle/typescript/src/commands/game/sideQuest/models/player.js +46 -0
- package/bundle/typescript/src/commands/game/sideQuest/models/player.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/types/repro.d.ts +158 -3
- package/bundle/typescript/src/commands/game/sideQuest/types/repro.js +24 -1
- package/bundle/typescript/src/commands/game/sideQuest/types/repro.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/ar.js +33 -3
- package/bundle/typescript/src/commands/game/sideQuest/utilities/ar.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-dump.js +2 -2
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-dump.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-vocab.d.ts +4 -2
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-vocab.js +15 -3
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-vocab.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog.d.ts +6 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/fuzzy-match.d.ts +24 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/fuzzy-match.js +31 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/fuzzy-match.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-names.d.ts +20 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-names.js +21 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-names.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-view.js +4 -3
- package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-view.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/marks.js +2 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/marks.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.d.ts +71 -18
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.js +109 -21
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-view.d.ts +38 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-view.js +46 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-view.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.d.ts +31 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js +41 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.d.ts +29 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.js +33 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest-backlog.sub.cmd.js +1 -1
- package/bundle/typescript/src/commands/game/sideQuest-backlog.sub.cmd.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js +34 -8
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js.map +1 -1
- package/bundle/typescript/src/commands/set/global.sub.cmd.js +1 -20
- package/bundle/typescript/src/commands/set/global.sub.cmd.js.map +1 -1
- package/bundle/typescript/src/generator.js +1 -0
- package/bundle/typescript/src/generator.js.map +1 -1
- package/bundle/typescript/src/templates/meteor/collection/tests.js +1 -1
- package/bundle/typescript/src/templates/meteor/collection/tests.js.ts +1 -1
- package/bundle/typescript/src/templates/react/test/test.js.jsx +31 -29
- package/bundle/typescript/src/templates/react/test/test.js.tsx +31 -29
- package/bundle/typescript/src/tools/browser/open-browser.d.ts +7 -0
- package/bundle/typescript/src/tools/browser/open-browser.js +21 -0
- package/bundle/typescript/src/tools/browser/open-browser.js.map +1 -0
- package/bundle/typescript/src/tools/pkg/pkg.class.js +12 -1
- package/bundle/typescript/src/tools/pkg/pkg.class.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,6 +2,7 @@ import { Command } from './command.js';
|
|
|
2
2
|
import { hint } from '../utilities/hints.js';
|
|
3
3
|
import { GoCommand } from './go.js';
|
|
4
4
|
import { NPC } from '../models/npc.js';
|
|
5
|
+
import { Door } from '../models/door.js';
|
|
5
6
|
import { fuzzyPickName } from '../utilities/fuzzy-match.js';
|
|
6
7
|
import { heldBy, holding } from '../utilities/grapple.js';
|
|
7
8
|
import { spotsActive, resolveSpot, spotOf, describeSpotRoster, OPEN_FLOOR, pathBetweenSpots, spotDistanceMeters, spotClimbSteps, blockingRegion, terrainRefusal, reseatOpenFloor, routeForMove, stepFrom, spotForCell, actorCell, standingRoomNear, furnitureCells, approachCellFor, } from '../utilities/spots.js';
|
|
@@ -9,7 +10,7 @@ import { spotsActive, resolveSpot, spotOf, describeSpotRoster, OPEN_FLOOR, pathB
|
|
|
9
10
|
// you from where you GOT to, which is a distance in metres, not a whole
|
|
10
11
|
// storey. The storey-based wrapper still exists for callers that really
|
|
11
12
|
// do fall a level.
|
|
12
|
-
import { fallDamageDVMeters, climbHitsFor, climbMetersFrom, METERS_PER_CELL, METERS_PER_LEVEL, key } from '../utilities/room-grid.js';
|
|
13
|
+
import { fallDamageDVMeters, climbHitsFor, climbMetersFrom, climbSurfaceModifier, METERS_PER_CELL, METERS_PER_LEVEL, key } from '../utilities/room-grid.js';
|
|
13
14
|
import { rollPool, formatRoll } from '../utilities/dice.js';
|
|
14
15
|
/**
|
|
15
16
|
* "walk to <spot>" / "run to <spot>" / "sprint to <spot>" -- crossing
|
|
@@ -130,6 +131,15 @@ export class MoveCommand extends Command {
|
|
|
130
131
|
const qualified = this.resolveQualifiedDoorway(room, words.join(' '));
|
|
131
132
|
if (qualified !== undefined)
|
|
132
133
|
return this.crossToDoorway(qualified);
|
|
134
|
+
// ...and the same courtesy for the OTHER qualifier the map prints.
|
|
135
|
+
// Checked here, beside its direction twin and ahead of the spot
|
|
136
|
+
// resolver, for exactly the reason the twin is: the wrong answer
|
|
137
|
+
// arrives first otherwise (TqKCyEZ23ppb4w5BP).
|
|
138
|
+
const byLock = this.resolveDoorwayByLockState(room, words.join(' '));
|
|
139
|
+
if (byLock?.kind === 'refusal')
|
|
140
|
+
return byLock.text;
|
|
141
|
+
if (byLock?.kind === 'doorway')
|
|
142
|
+
return this.crossToDoorway(byLock.dir);
|
|
133
143
|
}
|
|
134
144
|
// Spot names next (unchanged behavior); then PEOPLE (player
|
|
135
145
|
// request: "move to Brick") -- walking to someone means walking to
|
|
@@ -216,6 +226,10 @@ export class MoveCommand extends Command {
|
|
|
216
226
|
// AP -4, resisted with Body + Armor (Player.getSoakPool). A
|
|
217
227
|
// successful climb still lands you at the spot; a failed one never
|
|
218
228
|
// does -- you're back where you started, hurt.
|
|
229
|
+
// Narration from a descent that got away, carried out to the arrival
|
|
230
|
+
// line below -- a rushed rappel still LANDS you, so its story has to
|
|
231
|
+
// ride with the arrival rather than replace it.
|
|
232
|
+
let descentNote = '';
|
|
219
233
|
const climbSteps = mine !== undefined ? spotClimbSteps(room, mine, spot.name) : undefined;
|
|
220
234
|
if (climbSteps !== undefined) {
|
|
221
235
|
// STRENGTH, NOT AGILITY (SR5 p.134, Climbing: the test is
|
|
@@ -230,58 +244,204 @@ export class MoveCommand extends Command {
|
|
|
230
244
|
// Gymnastics is the Athletics group's climbing member. That is a
|
|
231
245
|
// pre-existing, documented modelling choice, not something this
|
|
232
246
|
// roll invented; the attribute was a straightforward error.
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
//
|
|
237
|
-
//
|
|
238
|
-
//
|
|
239
|
-
//
|
|
240
|
-
//
|
|
241
|
-
//
|
|
242
|
-
const
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
247
|
+
// ASSISTED CLIMBING (p.134 Climbing Table: +2 dice, and 1 metre
|
|
248
|
+
// per hit instead of per two). The gear is the p.449 kit -- rope,
|
|
249
|
+
// harness, carabiners, crampons -- which this game has SOLD in the
|
|
250
|
+
// catalog all along (`climbing-gear`) while nothing read it. It
|
|
251
|
+
// was buyable and inert, the same shape as the hostility flag:
|
|
252
|
+
// wired at one end only.
|
|
253
|
+
//
|
|
254
|
+
// Carried, not worn: a kit in the pack is a kit you can rig.
|
|
255
|
+
// Narration from a rappel that got away, prepended to the arrival.
|
|
256
|
+
const assisted = actor.inventory.getAllItems().some(i => /climbing gear|climbing kit|\brope\b|harness|carabiner|crampon|grapple gun/i.test(`${i.name} ${i.description ?? ''}`));
|
|
257
|
+
// WHICH WAY. pathClimbSteps returns a magnitude, so direction is
|
|
258
|
+
// read off the cells: canon prices down differently from up
|
|
259
|
+
// (unassisted down is 1m per HIT, twice the rate of going up),
|
|
260
|
+
// and rappelling is a different test entirely.
|
|
261
|
+
const grid = room.ensureGrid();
|
|
262
|
+
const fromZ = mine !== undefined ? (grid?.spotCells.get(mine)?.z ?? 0) : 0;
|
|
263
|
+
const toZ = grid?.spotCells.get(spot.name)?.z ?? 0;
|
|
264
|
+
const down = toZ < fromZ;
|
|
265
|
+
// SURFACE AND CONDITION (p.134), read off the room's own prose and
|
|
266
|
+
// the level's name -- see climbSurfaceModifier. Zero unless the
|
|
267
|
+
// fiction says otherwise, which is why adding this could not
|
|
268
|
+
// re-break the scenes the banking fix just made climbable.
|
|
269
|
+
const surface = climbSurfaceModifier(`${room.name} ${room.description ?? ''} ${(room.levels ?? []).map(l => `${l.name} ${l.kind ?? ''}`).join(' ')} ${spot.name}`);
|
|
270
|
+
// RAPPELLING (p.134) IS ITS OWN ROW: "assisted climbing down" is
|
|
271
|
+
// not a scaled climb, it is Free-Fall + Body [Physical] (2) on a
|
|
272
|
+
// rope, descending 20 metres per Combat Turn. Routed here rather
|
|
273
|
+
// than folded into the climb rate, because folding it in would
|
|
274
|
+
// have made it a faster climb instead of a different act.
|
|
275
|
+
//
|
|
276
|
+
// THE CLOCK IS THE BOOK'S BOOKKEEPING, NOT THE RULE. Canon quotes
|
|
277
|
+
// the rate per Combat Turn and this engine has no combat-turn
|
|
278
|
+
// clock (the same gap named in getInitiativeDice and in the sprite
|
|
279
|
+
// sustain task). The RATE is what is canon: 20m per turn, +1m per
|
|
280
|
+
// net hit. Every vertical drop this engine can build is a handful
|
|
281
|
+
// of metres -- METERS_PER_LEVEL is 3 -- so a single turn covers
|
|
282
|
+
// any of them outright, and the honest translation is one test
|
|
283
|
+
// that either lands you or does not. No clock invented to host it.
|
|
284
|
+
if (down && assisted) {
|
|
285
|
+
// Free-Fall in canon; this engine carries `athletics` as the
|
|
286
|
+
// group and has no Free-Fall skill, the same documented
|
|
287
|
+
// collapse as Gymnastics above.
|
|
288
|
+
const ffSkill = actor.skillRating('athletics');
|
|
289
|
+
const ffPool = Math.max(1, actor.body + (ffSkill > 0 ? ffSkill : -1) + actor.qualityBonus('athletics') + surface.mod + actor.woundModifier - actor.sustainingPenalty);
|
|
290
|
+
const ff = rollPool(ffPool);
|
|
291
|
+
this.logger.meta(` Rappel ${climbSteps * METERS_PER_LEVEL}m -- Free-Fall + Body (2)${surface.label ? ` [${surface.label}]` : ''}: ${formatRoll(ff)}`);
|
|
292
|
+
if (ff.hits >= 2) {
|
|
293
|
+
actor.climbProgress = undefined;
|
|
294
|
+
this.actor.performAction('rappels down to', spot.name);
|
|
295
|
+
// Falls through to the normal arrival below.
|
|
259
296
|
}
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
if (
|
|
271
|
-
actor.
|
|
272
|
-
|
|
297
|
+
else {
|
|
298
|
+
// "On an unsuccessful test you don't slow down" (p.134): the
|
|
299
|
+
// rope runs and you arrive hard rather than not at all.
|
|
300
|
+
const dv = fallDamageDVMeters(climbSteps * METERS_PER_LEVEL);
|
|
301
|
+
descentNote = `You kick off and the line runs faster than you meant -- you come down the rope in a rush.`;
|
|
302
|
+
// Carried out to the arrival line below: a rushed rappel still
|
|
303
|
+
// lands you, so the story of it has to ride WITH the arrival
|
|
304
|
+
// rather than replacing it. Lint caught this built-and-dropped
|
|
305
|
+
// -- the player would have taken the damage and been told
|
|
306
|
+
// nothing about where it came from.
|
|
307
|
+
if (dv > 0) {
|
|
308
|
+
const soak = rollPool(actor.getSoakPool());
|
|
309
|
+
const dealt = Math.max(0, dv - soak.hits);
|
|
310
|
+
this.logger.meta(` Hard landing: DV ${dv}, Soak: ${formatRoll(soak)}`);
|
|
311
|
+
if (dealt > 0) {
|
|
312
|
+
actor.takeDamage(dealt);
|
|
313
|
+
descentNote += ` The landing costs you ${dealt} box${dealt === 1 ? '' : 'es'}: ${actor.conditionSummary()}`;
|
|
314
|
+
}
|
|
315
|
+
else {
|
|
316
|
+
descentNote += ` You hit hard and the armor eats it.`;
|
|
317
|
+
}
|
|
273
318
|
}
|
|
274
319
|
else {
|
|
275
|
-
|
|
320
|
+
descentNote += ` It is not far enough to hurt.`;
|
|
276
321
|
}
|
|
322
|
+
actor.climbProgress = undefined;
|
|
323
|
+
this.actor.performAction('rappels down to', spot.name);
|
|
324
|
+
// A rushed rappel still ARRIVES -- you are down either way.
|
|
277
325
|
}
|
|
278
|
-
|
|
279
|
-
|
|
326
|
+
// A RAPPEL IS NOT A CLIMB, so it does not run one. Everything
|
|
327
|
+
// below belongs to going UP, or to going down the hard way.
|
|
328
|
+
}
|
|
329
|
+
else {
|
|
330
|
+
const athleticsSkill = actor.skillRating('athletics');
|
|
331
|
+
const pool = Math.max(1, actor.strength + (athleticsSkill > 0 ? athleticsSkill : -1) + actor.qualityBonus('athletics') + actor.augBonus('athletics') + (assisted ? 2 : 0) + surface.mod + actor.woundModifier - actor.sustainingPenalty);
|
|
332
|
+
const climb = rollPool(pool);
|
|
333
|
+
// HITS BUY DISTANCE -- there is no threshold (p.134, Climbing
|
|
334
|
+
// Table: "Unassisted climbing upward, 1 meter per 2 hits"). This
|
|
335
|
+
// used to be a flat "2 hits or you fall", which is a rule the book
|
|
336
|
+
// does not have: it made a one-metre scramble and a three-storey
|
|
337
|
+
// face equally hard, and it made a strong climber's extra hits
|
|
338
|
+
// buy nothing.
|
|
339
|
+
const meters = climbSteps * METERS_PER_LEVEL;
|
|
340
|
+
// BANKED PROGRESS (p.134): hits buy metres per TEST, and a wall is
|
|
341
|
+
// climbed over successive actions. Anything already banked toward
|
|
342
|
+
// THIS spot counts; progress toward a different one does not
|
|
343
|
+
// transfer, or a player could bank a metre on one wall and cash it
|
|
344
|
+
// in across the room.
|
|
345
|
+
const banked = actor.climbProgress?.target === spot.name ? actor.climbProgress.meters : 0;
|
|
346
|
+
const remaining = Math.max(0, meters - banked);
|
|
347
|
+
// DOWN IS TWICE AS FAST (p.134: "Unassisted climbing down, 1 metre
|
|
348
|
+
// per hit"). The engine climbed down at the upward rate, so a
|
|
349
|
+
// runner picking their way off a catwalk paid the same toll as
|
|
350
|
+
// getting onto it -- the item's third gap.
|
|
351
|
+
const needed = climbHitsFor(remaining, assisted, down);
|
|
352
|
+
const gained = climbMetersFrom(climb.hits, assisted, down);
|
|
353
|
+
const reachedTotal = Math.min(meters, banked + gained);
|
|
354
|
+
const gotUp = !climb.glitch && climb.hits >= needed;
|
|
355
|
+
this.logger.meta(` ${down ? 'Descend' : 'Climb'} ${meters}m${banked > 0 ? ` (${Math.round(banked)}m already banked, ${Math.round(remaining)}m to go)` : ''}${assisted ? ' -- ASSISTED (+2, 1m/hit)' : ''}${down && !assisted ? ' -- DOWN (1m/hit)' : ''}${surface.label ? ` [${surface.label}]` : ''} -- Gymnastics + Strength: ${formatRoll(climb)} (${needed} hits needed)`);
|
|
356
|
+
if (gotUp) {
|
|
357
|
+
// Over the lip: the wall is done with you.
|
|
358
|
+
actor.climbProgress = undefined;
|
|
359
|
+
}
|
|
360
|
+
if (!gotUp) {
|
|
361
|
+
// A FAILED CLIMB IS NOT A FALL (p.134, Climbing Failures and
|
|
362
|
+
// Glitches). Progress halts and you make a Reaction + Strength
|
|
363
|
+
// test to HOLD ON; only failing THAT drops you. Falling
|
|
364
|
+
// immediately was the engine's own invention, and it is the
|
|
365
|
+
// half of this that made climbing feel arbitrary -- one bad
|
|
366
|
+
// roll and gravity, with nothing in between.
|
|
367
|
+
const hold = rollPool(Math.max(1, actor.reaction + actor.strength + actor.woundModifier - actor.sustainingPenalty));
|
|
368
|
+
this.logger.meta(` Hold on -- Reaction + Strength: ${formatRoll(hold)} (1 hit holds)`);
|
|
369
|
+
const reached = reachedTotal;
|
|
370
|
+
if (hold.hits >= 1) {
|
|
371
|
+
// YOU KEEP THE METRES. This used to end "and climb back down",
|
|
372
|
+
// throwing the whole attempt away -- which is what made a tall
|
|
373
|
+
// wall unclimbable rather than merely slow. Hanging on with
|
|
374
|
+
// progress banked is the book's own shape: another Complex
|
|
375
|
+
// Action, from where you got to.
|
|
376
|
+
actor.climbProgress = { target: spot.name, meters: reached };
|
|
377
|
+
const left = Math.max(0, meters - reached);
|
|
378
|
+
this.actor.performAction('climbs partway toward', `the ${spot.name}, and holds there`);
|
|
379
|
+
return `You get about ${reached < 1 ? 'a body length' : `${Math.round(reached)}m`} up and it stops going anywhere -- ${climb.glitch ? 'a hold shears away under your weight' : 'no purchase left within reach'}. You hang on, boots wedged, ${left < 1 ? 'the lip within reach' : `about ${Math.round(left)}m still above you`}.${hint(` (Climb again to keep going${assisted ? '' : '; rope and a harness would double your rate'}.)`)}`;
|
|
380
|
+
}
|
|
381
|
+
// THE SECOND CHANCE (p.134 Climbing Failures and Glitches;
|
|
382
|
+
// 6SmvvRRtn9eEMZSbF). Canon: the hold-on fails, you start to
|
|
383
|
+
// fall, "and during the next Action Phase the character may
|
|
384
|
+
// attempt to stop with a Reaction + Strength Test at a -2 dice
|
|
385
|
+
// pool modifier". Two tests, not one, and this engine only ever
|
|
386
|
+
// rolled the first.
|
|
387
|
+
//
|
|
388
|
+
// COMPRESSED, AND SAYING SO. The book puts a phase between them
|
|
389
|
+
// because a fall takes time -- 20m per Combat Turn. Every drop
|
|
390
|
+
// this engine can build is a few metres (METERS_PER_LEVEL is 3),
|
|
391
|
+
// so there is no phase to wait for: the catch resolves in the
|
|
392
|
+
// same breath as the slip. The MECHANIC is canon -- a second
|
|
393
|
+
// attempt, at -2 -- and only the gap between them is missing,
|
|
394
|
+
// which is the same translation the rappel makes above.
|
|
395
|
+
//
|
|
396
|
+
// THE FILED ITEM'S FRAMING WAS WRONG and the correction belongs
|
|
397
|
+
// here: there is no general "arrest any fall" rule in SR5. The
|
|
398
|
+
// RAG is explicit that a mid-fall save exists in exactly two
|
|
399
|
+
// places, this one and a failed rappel. A character who walks
|
|
400
|
+
// off a roof does not get it, and giving them one would be
|
|
401
|
+
// inventing a rule the book does not have.
|
|
402
|
+
const catchIt = rollPool(Math.max(1, actor.reaction + actor.strength - 2 + actor.woundModifier - actor.sustainingPenalty));
|
|
403
|
+
this.logger.meta(` Catch yourself -- Reaction + Strength -2: ${formatRoll(catchIt)} (1 hit stops the fall)`);
|
|
404
|
+
if (catchIt.hits >= 1) {
|
|
405
|
+
actor.climbProgress = { target: spot.name, meters: reached };
|
|
406
|
+
this.actor.performAction('slips on', `the ${spot.name} climb, and catches themselves`);
|
|
407
|
+
return `You come off -- and catch yourself a body length down, fingers screaming. You are still on the wall, about ${reached < 1 ? 'a body length' : `${Math.round(reached)}m`} up.${hint(` (Climb again to keep going.)`)}`;
|
|
408
|
+
}
|
|
409
|
+
// The grip goes: the wall takes back everything it gave.
|
|
410
|
+
actor.climbProgress = undefined;
|
|
411
|
+
// Fall from where you ACTUALLY got to, not from the top. Canon
|
|
412
|
+
// buys distance with hits whether or not you finish, so a
|
|
413
|
+
// runner who barely left the floor does not take a storey's
|
|
414
|
+
// worth of landing.
|
|
415
|
+
const dv = fallDamageDVMeters(reached);
|
|
416
|
+
let fallNote = `Your grip goes, and there's nothing to catch -- you come off the wall about ${reached < 1 ? 'a body length' : `${Math.round(reached)}m`} up.`;
|
|
417
|
+
if (dv > 0) {
|
|
418
|
+
const soak = rollPool(actor.getSoakPool());
|
|
419
|
+
const dealt = Math.max(0, dv - soak.hits);
|
|
420
|
+
this.logger.meta(` Fall damage: DV ${dv} (${Math.round(reached)}m, AP -4), Soak: ${formatRoll(soak)}`);
|
|
421
|
+
if (dealt > 0) {
|
|
422
|
+
actor.takeDamage(dealt);
|
|
423
|
+
fallNote += ` The landing costs you ${dealt} box${dealt === 1 ? '' : 'es'}: ${actor.conditionSummary()}`;
|
|
424
|
+
}
|
|
425
|
+
else {
|
|
426
|
+
fallNote += ` You hit hard but the armor eats it.`;
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
else {
|
|
430
|
+
fallNote += ` It's a short drop -- you land badly and nothing breaks.`;
|
|
431
|
+
}
|
|
432
|
+
this.actor.performAction('falls from', `a climb toward the ${spot.name}`);
|
|
433
|
+
return fallNote;
|
|
280
434
|
}
|
|
281
|
-
this.actor.performAction('falls from', `a climb toward the ${spot.name}`);
|
|
282
|
-
return fallNote;
|
|
283
435
|
}
|
|
284
436
|
}
|
|
437
|
+
// BANKED CLIMB PROGRESS BELONGS TO ONE WALL. Anything that gets the
|
|
438
|
+
// actor to a spot -- this move, a step, a walk across the floor --
|
|
439
|
+
// ends whatever climb they were part-way up. Without this the metres
|
|
440
|
+
// would wait indefinitely and a player could bank a body length,
|
|
441
|
+
// wander off, and come back to a wall that had helpfully remembered.
|
|
442
|
+
if (actor.climbProgress && actor.climbProgress.target !== spot.name) {
|
|
443
|
+
actor.climbProgress = undefined;
|
|
444
|
+
}
|
|
285
445
|
// "Away" is wherever the room's empty ground currently IS -- re-seat
|
|
286
446
|
// it on the loneliest reachable cell before measuring the crossing
|
|
287
447
|
// or committing the move (see spots.ts reseatOpenFloor).
|
|
@@ -344,7 +504,7 @@ export class MoveCommand extends Command {
|
|
|
344
504
|
const company = toWhom
|
|
345
505
|
? `, coming up beside ${toWhom}.`
|
|
346
506
|
: '.';
|
|
347
|
-
return `You ${pace} the ${spot.name}${crossNote}${company}${spotDesc}${here.length > 0 ? ` Here: ${here.join(', ')}.` : ''}`;
|
|
507
|
+
return `${descentNote ? `${descentNote} ` : ''}You ${pace} the ${spot.name}${crossNote}${company}${spotDesc}${here.length > 0 ? ` Here: ${here.join(', ')}.` : ''}`;
|
|
348
508
|
}
|
|
349
509
|
/**
|
|
350
510
|
* "move south 2" -- a tactical step across the room's own grid, as
|
|
@@ -453,6 +613,88 @@ export class MoveCommand extends Command {
|
|
|
453
613
|
return undefined;
|
|
454
614
|
return MoveCommand.directionIn(room, q);
|
|
455
615
|
}
|
|
616
|
+
/**
|
|
617
|
+
* "locked" and "unlocked" -- whole words, and NOT each other.
|
|
618
|
+
* `\blocked\b` cannot match inside "unlocked" (there is no word
|
|
619
|
+
* boundary between "un" and "locked"), which is what lets these two be
|
|
620
|
+
* tested independently in either order.
|
|
621
|
+
*/
|
|
622
|
+
static LOCKED_WORD = /\blocked\b/i;
|
|
623
|
+
static UNLOCKED_WORD = /\bunlocked\b/i;
|
|
624
|
+
/** The ways out in a given lock state, as the MAP reports it -- same
|
|
625
|
+
* two predicates commands/map.ts prints "(locked)"/"(unlocked)" from,
|
|
626
|
+
* so the words a player reads there mean the same thing when they
|
|
627
|
+
* type them back. */
|
|
628
|
+
static exitsByLockState(room, wantLocked) {
|
|
629
|
+
const out = [];
|
|
630
|
+
for (const [dir, exit] of room.exits) {
|
|
631
|
+
// A bare string exit is a destination with no door on it, so it
|
|
632
|
+
// has no lock state to name -- the same narrowing commands/map.ts
|
|
633
|
+
// does before it prints "(locked)".
|
|
634
|
+
if (!(exit instanceof Door))
|
|
635
|
+
continue;
|
|
636
|
+
const locked = exit.checkIfLocked();
|
|
637
|
+
const lockable = exit.checkIfLockable();
|
|
638
|
+
if (wantLocked ? locked : (lockable && !locked))
|
|
639
|
+
out.push(dir);
|
|
640
|
+
}
|
|
641
|
+
return out;
|
|
642
|
+
}
|
|
643
|
+
/** "south (to Redmond Safehouse), east (locked)" -- for a refusal that
|
|
644
|
+
* has to show the player what there actually is. */
|
|
645
|
+
static describeExits(room) {
|
|
646
|
+
const parts = [];
|
|
647
|
+
for (const [dir, exit] of room.exits) {
|
|
648
|
+
const state = exit instanceof Door
|
|
649
|
+
? (exit.checkIfLocked() ? ' (locked)' : exit.checkIfLockable() ? ' (unlocked)' : '')
|
|
650
|
+
: '';
|
|
651
|
+
parts.push(`${String(dir)}${state}`);
|
|
652
|
+
}
|
|
653
|
+
return parts.join(', ');
|
|
654
|
+
}
|
|
655
|
+
/**
|
|
656
|
+
* A DOOR NAMED BY ITS LOCK STATE (TqKCyEZ23ppb4w5BP: "there's no
|
|
657
|
+
* location in Krow's Den in Seattle Undergroud to move to the locked
|
|
658
|
+
* door").
|
|
659
|
+
*
|
|
660
|
+
* The direction half of this was fixed at 28973218 and works. The
|
|
661
|
+
* qualifier the player ACTUALLY read off the map did not: `map` prints
|
|
662
|
+
* "East: To Lucky Chummer (locked)", they typed "move to locked door",
|
|
663
|
+
* and resolveSpot's substring branch matched the spot literally called
|
|
664
|
+
* "door" -- bound to the SOUTH exit -- because "locked door" contains
|
|
665
|
+
* "door". Same silent qualifier as the original report, one word over,
|
|
666
|
+
* and the same two answers: walked to the wrong door, then told they
|
|
667
|
+
* were already at it.
|
|
668
|
+
*
|
|
669
|
+
* SCOPED TO THE WORDS THE GAME ITSELF PRINTS. "locked" and "unlocked"
|
|
670
|
+
* are map vocabulary, so a player typing them is quoting the interface
|
|
671
|
+
* back at it and means something precise. "steel door" is NOT handled
|
|
672
|
+
* here and deliberately still falls through to the spot resolver --
|
|
673
|
+
* inventing a general adjective matcher would start refusing phrases
|
|
674
|
+
* that work today for no report's sake.
|
|
675
|
+
*
|
|
676
|
+
* A qualifier that names no door, or more than one, REFUSES and shows
|
|
677
|
+
* the ways out rather than silently picking one. Guessing is what
|
|
678
|
+
* produced both halves of the original report.
|
|
679
|
+
*/
|
|
680
|
+
resolveDoorwayByLockState(room, query) {
|
|
681
|
+
const q = query.trim().toLowerCase();
|
|
682
|
+
if (!q || !MoveCommand.DOORISH.test(q))
|
|
683
|
+
return undefined;
|
|
684
|
+
const wantsUnlocked = MoveCommand.UNLOCKED_WORD.test(q);
|
|
685
|
+
const wantsLocked = !wantsUnlocked && MoveCommand.LOCKED_WORD.test(q);
|
|
686
|
+
if (!wantsLocked && !wantsUnlocked)
|
|
687
|
+
return undefined;
|
|
688
|
+
const matches = MoveCommand.exitsByLockState(room, wantsLocked);
|
|
689
|
+
if (matches.length === 1)
|
|
690
|
+
return { kind: 'doorway', dir: matches[0] };
|
|
691
|
+
const word = wantsLocked ? 'locked' : 'unlocked';
|
|
692
|
+
const ways = MoveCommand.describeExits(room);
|
|
693
|
+
if (matches.length === 0) {
|
|
694
|
+
return { kind: 'refusal', text: `Nothing here is ${word}.${ways ? ` The ways out: ${ways}.` : ''}` };
|
|
695
|
+
}
|
|
696
|
+
return { kind: 'refusal', text: `Which ${word} one? ${matches.map(d => String(d)).join(' or ')}.` };
|
|
697
|
+
}
|
|
456
698
|
resolveDoorTarget(room, query) {
|
|
457
699
|
const q = query.trim().toLowerCase();
|
|
458
700
|
if (!q)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"move.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/move.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"move.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/move.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAKvC,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AASzC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EACL,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE,UAAU,EAChE,gBAAgB,EAAE,kBAAkB,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EACpF,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EACjF,cAAc,EAAE,eAAe,GAChC,MAAM,uBAAuB,CAAC;AAC/B,sEAAsE;AACtE,wEAAwE;AACxE,wEAAwE;AACxE,mBAAmB;AACnB,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAC5J,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,WAAY,SAAQ,OAAO;IAC5B,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC;IACrB,MAAM,CAAC,WAAW,GAAG,uVAAuV,CAAC;IAEvX,yEAAyE;IAC/D,IAAI;QACZ,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAiB,EAAE;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,IAAI,GAAG,KAAK,CAAC,eAAe,CAAC;QAEnC,gEAAgE;QAChE,gCAAgC;QAChC,IAAI,KAAK,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9B,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,IAAI;YAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7D,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEjE,+DAA+D;QAC/D,iEAAiE;QACjE,+DAA+D;QAC/D,gEAAgE;QAChE,iEAAiE;QACjE,oEAAoE;QACpE,gEAAgE;QAChE,+DAA+D;QAC/D,gEAAgE;QAChE,qEAAqE;QACrE,qEAAqE;QACrE,mEAAmE;QACnE,kEAAkE;QAClE,wDAAwD;QACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC;eAC9B,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,+DAA+D;QAC/D,6DAA6D;QAC7D,0CAA0C;QAC1C,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;eAC9D,CAAC,UAAU;eACX,CAAC,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAe,CAAC;YACtD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5E,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;gBAC3B,OAAO,wFAAwF,CAAC;YAClG,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;gBACvB,OAAO,sCAAsC,IAAI,CAAC,SAAS,SAAS,cAAc,CAAC,EAAE,CAAC;YACxF,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACjD,CAAC;QAED,mEAAmE;QACnE,2DAA2D;QAC3D,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,GAAG,UAAU,CAAC,IAAI,uDAAuD,CAAC;QACnF,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,kBAAkB,QAAQ,CAAC,IAAI,oCAAoC,CAAC;QAC7E,CAAC;QAED,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YAC3B,OAAO,wFAAwF,CAAC;QAClG,CAAC;QAED,mEAAmE;QACnE,mEAAmE;QACnE,oEAAoE;QACpE,6DAA6D;QAC7D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACrE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC;oBACpB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,8CAA8C,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClF,CAAC,CAAC,8CAA8C,CAAC;YACrD,CAAC;YACD,OAAO,CAAC,aAAa,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClH,CAAC;QAED,sDAAsD;QACtD,mEAAmE;QACnE,wBAAwB;QACxB,EAAE;QACF,gEAAgE;QAChE,+DAA+D;QAC/D,8DAA8D;QAC9D,kEAAkE;QAClE,kEAAkE;QAClE,+DAA+D;QAC/D,iEAAiE;QACjE,gEAAgE;QAChE,2CAA2C;QAC3C,EAAE;QACF,gEAAgE;QAChE,+DAA+D;QAC/D,wBAAwB;QACxB,EAAE;QACF,oEAAoE;QACpE,gEAAgE;QAChE,kEAAkE;QAClE,+DAA+D;QAC/D,yBAAyB;QACzB,CAAC;YACC,MAAM,SAAS,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACtE,IAAI,SAAS,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;YACnE,mEAAmE;YACnE,gEAAgE;YAChE,iEAAiE;YACjE,+CAA+C;YAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACrE,IAAI,MAAM,EAAE,IAAI,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAC,IAAI,CAAC;YACnD,IAAI,MAAM,EAAE,IAAI,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzE,CAAC;QAED,4DAA4D;QAC5D,mEAAmE;QACnE,6DAA6D;QAC7D,kDAAkD;QAClD,IAAI,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9D,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBACjC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC5B,0DAA0D;oBAC1D,wDAAwD;oBACxD,OAAO,GAAG,MAAM,CAAC,IAAI,kEAAkE,CAAC;gBAC1F,CAAC;gBACD,uDAAuD;gBACvD,wDAAwD;gBACxD,+DAA+D;gBAC/D,8DAA8D;gBAC9D,8DAA8D;gBAC9D,0CAA0C;gBAC1C,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,SAAS;oBAAE,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBAClE,IAAI,GAAG,IAAI,CAAC,KAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;gBAC1E,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC;YACvB,CAAC;QACH,CAAC;QACD,oEAAoE;QACpE,kEAAkE;QAClE,8DAA8D;QAC9D,yBAAyB;QACzB,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC;QACD,mEAAmE;QACnE,6DAA6D;QAC7D,mEAAmE;QACnE,iEAAiE;QACjE,gEAAgE;QAChE,wDAAwD;QACxD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAClD,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC7D,MAAM,OAAO,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;YACpC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC;gBACvB,CAAC,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,4BAA4B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;QACtC,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,OAAO,MAAM;gBACX,CAAC,CAAC,yBAAyB,IAAI,CAAC,IAAI,SAAS,MAAM,GAAG;gBACtD,CAAC,CAAC,yBAAyB,IAAI,CAAC,IAAI,GAAG,CAAC;QAC5C,CAAC;QAED,kEAAkE;QAClE,gEAAgE;QAChE,qEAAqE;QACrE,2DAA2D;QAC3D,6DAA6D;QAC7D,8BAA8B;QAC9B,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxF,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,IAAI,OAAO;gBAAE,OAAO,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAChF,CAAC;QAED,oEAAoE;QACpE,mEAAmE;QACnE,8DAA8D;QAC9D,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,kFAAkF,CAAC;QAC5F,CAAC;QAED,mEAAmE;QACnE,iEAAiE;QACjE,+DAA+D;QAC/D,gEAAgE;QAChE,4DAA4D;QAC5D,mEAAmE;QACnE,+CAA+C;QAC/C,qEAAqE;QACrE,qEAAqE;QACrE,gDAAgD;QAChD,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,MAAM,UAAU,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1F,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,0DAA0D;YAC1D,kEAAkE;YAClE,gEAAgE;YAChE,kEAAkE;YAClE,qDAAqD;YACrD,EAAE;YACF,gEAAgE;YAChE,iEAAiE;YACjE,+DAA+D;YAC/D,iEAAiE;YACjE,gEAAgE;YAChE,4DAA4D;YAC5D,gEAAgE;YAChE,kEAAkE;YAClE,mEAAmE;YACnE,gEAAgE;YAChE,+DAA+D;YAC/D,yBAAyB;YACzB,EAAE;YACF,6DAA6D;YAC7D,mEAAmE;YACnE,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACtD,4EAA4E,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAEzH,iEAAiE;YACjE,4DAA4D;YAC5D,+DAA+D;YAC/D,+CAA+C;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,MAAM,GAAG,GAAG,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YACnD,MAAM,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC;YAEzB,mEAAmE;YACnE,gEAAgE;YAChE,6DAA6D;YAC7D,2DAA2D;YAC3D,MAAM,OAAO,GAAG,oBAAoB,CAClC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhI,iEAAiE;YACjE,iEAAiE;YACjE,iEAAiE;YACjE,+DAA+D;YAC/D,0DAA0D;YAC1D,EAAE;YACF,kEAAkE;YAClE,8DAA8D;YAC9D,mEAAmE;YACnE,kEAAkE;YAClE,kEAAkE;YAClE,gEAAgE;YAChE,+DAA+D;YAC/D,mEAAmE;YACnE,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;gBACrB,6DAA6D;gBAC7D,wDAAwD;gBACxD,gCAAgC;gBAChC,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;gBAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,GAAG,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBACtK,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,UAAU,GAAG,gBAAgB,4BAA4B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACvJ,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;oBACjB,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC;oBAChC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;oBACvD,6CAA6C;gBAC/C,CAAC;qBAAM,CAAC;oBACN,6DAA6D;oBAC7D,wDAAwD;oBACxD,MAAM,EAAE,GAAG,kBAAkB,CAAC,UAAU,GAAG,gBAAgB,CAAC,CAAC;oBAC7D,WAAW,GAAG,2FAA2F,CAAC;oBAC1G,+DAA+D;oBAC/D,6DAA6D;oBAC7D,+DAA+D;oBAC/D,0DAA0D;oBAC1D,oCAAoC;oBACpC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;wBACX,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;wBAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,WAAW,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACxE,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;4BACd,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;4BACxB,WAAW,IAAI,0BAA0B,KAAK,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC;wBAC9G,CAAC;6BAAM,CAAC;4BACN,WAAW,IAAI,sCAAsC,CAAC;wBACxD,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,WAAW,IAAI,gCAAgC,CAAC;oBAClD,CAAC;oBACD,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC;oBAChC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;oBACvD,4DAA4D;gBAC9D,CAAC;gBAEH,8DAA8D;gBAC9D,4DAA4D;YAC5D,CAAC;iBAAM,CAAC;gBACR,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;gBACtD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBACzO,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAE7B,8DAA8D;gBAC9D,iEAAiE;gBACjE,mEAAmE;gBACnE,iEAAiE;gBACjE,+DAA+D;gBAC/D,eAAe;gBACf,MAAM,MAAM,GAAG,UAAU,GAAG,gBAAgB,CAAC;gBAC7C,mEAAmE;gBACnE,kEAAkE;gBAClE,6DAA6D;gBAC7D,mEAAmE;gBACnE,sBAAsB;gBACtB,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1F,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;gBAC/C,mEAAmE;gBACnE,8DAA8D;gBAC9D,+DAA+D;gBAC/D,2CAA2C;gBAC3C,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACvD,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;gBACvD,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC;gBACpD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,IAAI,MAAM,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,qBAAqB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,8BAA8B,UAAU,CAAC,KAAK,CAAC,KAAK,MAAM,eAAe,CAAC,CAAC;gBAEhX,IAAI,KAAK,EAAE,CAAC;oBACV,2CAA2C;oBAC3C,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC;gBAClC,CAAC;gBAED,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,6DAA6D;oBAC7D,+DAA+D;oBAC/D,wDAAwD;oBACxD,4DAA4D;oBAC5D,4DAA4D;oBAC5D,6CAA6C;oBAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBACpH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qCAAqC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBACxF,MAAM,OAAO,GAAG,YAAY,CAAC;oBAC7B,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;wBACnB,+DAA+D;wBAC/D,+DAA+D;wBAC/D,4DAA4D;wBAC5D,2DAA2D;wBAC3D,iCAAiC;wBACjC,KAAK,CAAC,aAAa,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;wBAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;wBAC3C,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,uBAAuB,EAAE,OAAO,IAAI,CAAC,IAAI,mBAAmB,CAAC,CAAC;wBACvF,OAAO,iBAAiB,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,sCAAsC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC,+BAA+B,gCAAgC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,8BAA8B,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,6CAA6C,IAAI,CAAC,EAAE,CAAC;oBAC5a,CAAC;oBAED,2DAA2D;oBAC3D,6DAA6D;oBAC7D,4DAA4D;oBAC5D,+DAA+D;oBAC/D,gEAAgE;oBAChE,oBAAoB;oBACpB,EAAE;oBACF,gEAAgE;oBAChE,+DAA+D;oBAC/D,iEAAiE;oBACjE,8DAA8D;oBAC9D,6DAA6D;oBAC7D,8DAA8D;oBAC9D,wDAAwD;oBACxD,EAAE;oBACF,gEAAgE;oBAChE,+DAA+D;oBAC/D,6DAA6D;oBAC7D,8DAA8D;oBAC9D,2DAA2D;oBAC3D,2CAA2C;oBAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,GAAG,CAAC,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBAC3H,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+CAA+C,UAAU,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;oBAC9G,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;wBACtB,KAAK,CAAC,aAAa,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;wBAC7D,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,IAAI,CAAC,IAAI,gCAAgC,CAAC,CAAC;wBACvF,OAAO,8GAA8G,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,OAAO,IAAI,CAAC,+BAA+B,CAAC,EAAE,CAAC;oBAC/N,CAAC;oBAED,yDAAyD;oBACzD,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC;oBAEhC,+DAA+D;oBAC/D,0DAA0D;oBAC1D,4DAA4D;oBAC5D,oBAAoB;oBACpB,MAAM,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;oBACvC,IAAI,QAAQ,GAAG,+EAA+E,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC;oBAC9J,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;wBACX,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;wBAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACxG,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;4BACd,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;4BACxB,QAAQ,IAAI,0BAA0B,KAAK,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC;wBAC3G,CAAC;6BAAM,CAAC;4BACN,QAAQ,IAAI,sCAAsC,CAAC;wBACrD,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,QAAQ,IAAI,0DAA0D,CAAC;oBACzE,CAAC;oBACD,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE,sBAAsB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC1E,OAAO,QAAQ,CAAC;gBAClB,CAAC;YACD,CAAC;QACH,CAAC;QAED,oEAAoE;QACpE,mEAAmE;QACnE,qEAAqE;QACrE,iEAAiE;QACjE,qEAAqE;QACrE,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACpE,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC;QAClC,CAAC;QAED,qEAAqE;QACrE,mEAAmE;QACnE,yDAAyD;QACzD,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;YAAE,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAE3D,8DAA8D;QAC9D,+DAA+D;QAC/D,wCAAwC;QACxC,MAAM,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAE9F,MAAM,QAAQ,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;YACtD,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;YAC3C,CAAC,CAAC,SAAS,CAAC;QAEd,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;QACzB,mEAAmE;QACnE,6DAA6D;QAC7D,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;QACzB,kEAAkE;QAClE,6DAA6D;QAC7D,oEAAoE;QACpE,qEAAqE;QACrE,+BAA+B;QAC/B,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QAEjG,qEAAqE;QACrE,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAClD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrC,IAAI,CAAC,CAAC,GAAG,CAAC,eAAe,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;oBACzF,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC3B,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAC1B,mEAAmE;QACnE,iEAAiE;QACjE,gBAAgB;QAChB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE7B,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;YACzB,OAAO,GAAG,KAAK,CAAC,IAAI,iBAAiB,IAAI,CAAC,IAAI,GAAG,CAAC;QACpD,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE;aAC1B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;aAC/F,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpB,mEAAmE;QACnE,kEAAkE;QAClE,iEAAiE;QACjE,MAAM,SAAS,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;YAC5D,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,qBAAqB;gBACrC,CAAC,CAAC,qBAAqB,CAAC;cACxB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjE,gEAAgE;QAChE,qCAAqC;QACrC,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC7B,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,0CAA0C,MAAM,UAAU,SAAS,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC/I,CAAC;YACD,OAAO,iCAAiC,SAAS,qCAAqC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAuB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC3J,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC;QAC1G,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,MAAM,OAAO,GAAG,MAAM;YACpB,CAAC,CAAC,sBAAsB,MAAM,GAAG;YACjC,CAAC,CAAC,GAAG,CAAC;QACR,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,QAAQ,IAAI,CAAC,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACtK,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,UAAU,CAAC,SAAoB,EAAE,KAAa;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,IAAI,GAAG,KAAK,CAAC,eAAe,CAAC;QAEnC,oEAAoE;QACpE,+DAA+D;QAC/D,mEAAmE;QACnE,8DAA8D;QAC9D,mEAAmE;QACnE,iEAAiE;QACjE,mEAAmE;QACnE,gCAAgC;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,EAAE,CAAC;YACxG,OAAO,MAAM,IAAI,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACjG,CAAC;QACD,+DAA+D;QAC/D,kEAAkE;QAClE,mEAAmE;QACnE,kEAAkE;QAClE,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,SAAS;YAAE,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC;QAC3D,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,kFAAkF,CAAC;QAC5F,CAAC;QAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC3E,IAAI,CAAC,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,sBAAsB;gBAC1D,CAAC,CAAC,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,8BAA8B;oBAC1D,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,oBAAoB;wBAC9C,CAAC,CAAC,gBAAgB,CAAC;YACzB,OAAO,kBAAkB,SAAS,OAAO,GAAG,GAAG,CAAC;QAClD,CAAC;QAED,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QACpB,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvC,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC,CAAC;QACxF,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE7B,MAAM,MAAM,GAAG,KAAK,GAAG,eAAe,CAAC;QACvC,MAAM,SAAS,GAAG,KAAK,GAAG,KAAK;YAC7B,CAAC,CAAC,6BAA6B,MAAM,OAAO,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,2BAA2B;gBAC/F,CAAC,CAAC,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,0BAA0B;oBACtD,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,UAAU,EAAE;YACnE,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,KAAK,UAAU;YACvC,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,YAAY,KAAK,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,SAAS,GAAG,SAAS,eAAe,KAAK,OAAO,CAAC;IACrH,CAAC;IAED;sEACkE;IAC1D,YAAY,CAAC,MAAc;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,IAAI,GAAG,KAAK,CAAC,eAAe,CAAC;QACnC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,kFAAkF,CAAC;QAC5F,CAAC;QACD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACnH,OAAO,gCAAgC,MAAM,CAAC,IAAI,GAAG,CAAC;QACxD,CAAC;QACD,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QACpB,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvC,KAAK,CAAC,aAAa,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,+CAA+C,MAAM,CAAC,IAAI,GAAG,CAAC;IACvE,CAAC;IAED;;;;;OAKG;IACK,MAAM,CAAU,OAAO,GAAG,0DAA0D,CAAC;IAE7F,mEAAmE;IAC3D,MAAM,CAAC,WAAW,CAAC,IAAU,EAAE,CAAS;QAC9C,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACpC,IAAI,IAAI,MAAM,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAAE,OAAO,GAAG,CAAC;QAC3E,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;OAOG;IACK,uBAAuB,CAAC,IAAU,EAAE,KAAa;QACvD,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QACzD,OAAO,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACK,MAAM,CAAU,WAAW,GAAG,aAAa,CAAC;IAC5C,MAAM,CAAU,aAAa,GAAG,eAAe,CAAC;IAExD;;;0BAGsB;IACd,MAAM,CAAC,gBAAgB,CAAC,IAAU,EAAE,UAAmB;QAC7D,MAAM,GAAG,GAAgB,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACrC,gEAAgE;YAChE,kEAAkE;YAClE,oCAAoC;YACpC,IAAI,CAAC,CAAC,IAAI,YAAY,IAAI,CAAC;gBAAE,SAAS;YACtC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACxC,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED;yDACqD;IAC7C,MAAM,CAAC,aAAa,CAAC,IAAU;QACrC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,IAAI,YAAY,IAAI;gBAChC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpF,CAAC,CAAC,EAAE,CAAC;YACP,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACK,yBAAyB,CAAC,IAAU,EAAE,KAAa;QACzD,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QACzD,MAAM,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,CAAC,aAAa,IAAI,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC,WAAW,IAAI,CAAC,aAAa;YAAE,OAAO,SAAS,CAAC;QAErD,MAAM,OAAO,GAAG,WAAW,CAAC,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAChE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;QACjD,MAAM,IAAI,GAAG,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,mBAAmB,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;QACvG,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,SAAS,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;IACtG,CAAC;IAEO,iBAAiB,CAAC,IAAU,EAAE,KAAa;QACjD,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QACzB,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC/C,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QACtC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QACnD,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjD,CAAC;IAED;0EACsE;IAC9D,cAAc,CAAC,SAAoB;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,IAAI,GAAG,KAAK,CAAC,eAAe,CAAC;QACnC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,kFAAkF,CAAC;QAC5F,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,kBAAkB,SAAS,aAAa,CAAC;QACpE,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI;YAAE,OAAO,mCAAmC,SAAS,WAAW,CAAC;QAC1E,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QACpB,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvC,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,SAAS,UAAU,CAAC,CAAC;QAC5D,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,oBAAoB,SAAS,YAAY,IAAI,CAAC,SAAS,SAAS,qBAAqB,CAAC,EAAE,CAAC;IAClG,CAAC;IAED,kEAAkE;IAC1D,iBAAiB,CAAC,IAAU,EAAE,KAAa;QACjD,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YAAE,OAAO,SAAS,CAAC;QAChE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QACzF,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QACxB,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAClE,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvE,CAAC;IAED;qDACiD;IACzC,WAAW,CAAC,IAAe;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,IAAI,GAAG,KAAK,CAAC,eAAe,CAAC;QACnC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,kFAAkF,CAAC;QAC5F,CAAC;QACD,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI;YAAE,OAAO,iCAAiC,IAAI,CAAC,IAAI,GAAG,CAAC;QAChE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QACpB,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvC,KAAK,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,IAAI,SAAS,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC;QACpD,OAAO,gBAAgB,IAAI,CAAC,IAAI,WAAW,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,sBAAsB,CAAC,CAAC,CAAC,CAAC,sBAAsB,EAAE,CAAC;IACvI,CAAC;IAED;;;;OAIG;IACK,kBAAkB,CAAC,IAAU,EAAE,KAAa;QAClD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/F,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACjE,OAAO,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,CAAC;;AAGH,8EAA8E;AAC9E,MAAM,OAAO,UAAW,SAAQ,WAAW;IAC/B,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;IACpB,MAAM,CAAC,WAAW,GAAG,yGAAyG,CAAC;IAC/H,IAAI;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;;AAGH,oEAAoE;AACpE,MAAM,OAAO,aAAc,SAAQ,WAAW;IAClC,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAC;IACvB,MAAM,CAAC,WAAW,GAAG,6DAA6D,CAAC;IACnF,IAAI;QACZ,OAAO,QAAQ,CAAC;IAClB,CAAC"}
|
|
@@ -59,6 +59,14 @@ export class RestCommand extends Command {
|
|
|
59
59
|
: `You find a corner, close your eyes, and let the static drain out.`];
|
|
60
60
|
if (sleptNow)
|
|
61
61
|
lines.push(` A real night's sleep, in a bed that's yours. It counts.`);
|
|
62
|
+
// Concentration doesn't survive sleep (p.251) -- every working this
|
|
63
|
+
// character personally sustains drops the moment they actually rest.
|
|
64
|
+
// Sits HERE, after every early return, so a refused rest ("too
|
|
65
|
+
// exposed", mid-firefight) never costs the threads.
|
|
66
|
+
const dropped = actor.releaseSustainedWorkings();
|
|
67
|
+
if (dropped > 0) {
|
|
68
|
+
lines.push(` The ${dropped === 1 ? 'working you were holding unravels' : `${dropped} workings you were holding unravel`} as your focus lets go -- the strain lifts with ${dropped === 1 ? 'it' : 'them'}.`);
|
|
69
|
+
}
|
|
62
70
|
if (actor.stunTaken > 0) {
|
|
63
71
|
// Home comfort is dice: the lifestyle tier adds (or, on the Street,
|
|
64
72
|
// subtracts) from the recovery roll -- but only AT HOME. A corner of
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rest.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/rest.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rest.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/rest.ts"],"names":[],"mappings":"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"}
|