@maka/maka-cli 5.109.0 → 5.111.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 (41) hide show
  1. package/bundle/typescript/package.json +1 -1
  2. package/bundle/typescript/src/commands/game/sideQuest/commands/container-verbs.d.ts +18 -0
  3. package/bundle/typescript/src/commands/game/sideQuest/commands/container-verbs.js +131 -0
  4. package/bundle/typescript/src/commands/game/sideQuest/commands/container-verbs.js.map +1 -0
  5. package/bundle/typescript/src/commands/game/sideQuest/commands/look.js +36 -0
  6. package/bundle/typescript/src/commands/game/sideQuest/commands/look.js.map +1 -1
  7. package/bundle/typescript/src/commands/game/sideQuest/commands/move.js +14 -6
  8. package/bundle/typescript/src/commands/game/sideQuest/commands/move.js.map +1 -1
  9. package/bundle/typescript/src/commands/game/sideQuest/commands/search.js +29 -1
  10. package/bundle/typescript/src/commands/game/sideQuest/commands/search.js.map +1 -1
  11. package/bundle/typescript/src/commands/game/sideQuest/commands/take.d.ts +2 -0
  12. package/bundle/typescript/src/commands/game/sideQuest/commands/take.js +47 -0
  13. package/bundle/typescript/src/commands/game/sideQuest/commands/take.js.map +1 -1
  14. package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.d.ts +10 -0
  15. package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.js +11 -2
  16. package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.js.map +1 -1
  17. package/bundle/typescript/src/commands/game/sideQuest/game.js +22 -2
  18. package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
  19. package/bundle/typescript/src/commands/game/sideQuest/models/_index.d.ts +1 -0
  20. package/bundle/typescript/src/commands/game/sideQuest/models/_index.js +1 -0
  21. package/bundle/typescript/src/commands/game/sideQuest/models/_index.js.map +1 -1
  22. package/bundle/typescript/src/commands/game/sideQuest/models/container.d.ts +78 -0
  23. package/bundle/typescript/src/commands/game/sideQuest/models/container.js +57 -0
  24. package/bundle/typescript/src/commands/game/sideQuest/models/container.js.map +1 -0
  25. package/bundle/typescript/src/commands/game/sideQuest/models/room.d.ts +18 -0
  26. package/bundle/typescript/src/commands/game/sideQuest/models/room.js +38 -0
  27. package/bundle/typescript/src/commands/game/sideQuest/models/room.js.map +1 -1
  28. package/bundle/typescript/src/commands/game/sideQuest/ui.js +172 -150
  29. package/bundle/typescript/src/commands/game/sideQuest/ui.js.map +1 -1
  30. package/bundle/typescript/src/commands/game/sideQuest/utilities/commerce.d.ts +14 -0
  31. package/bundle/typescript/src/commands/game/sideQuest/utilities/commerce.js +29 -0
  32. package/bundle/typescript/src/commands/game/sideQuest/utilities/commerce.js.map +1 -1
  33. package/bundle/typescript/src/commands/game/sideQuest/utilities/input-history.d.ts +3 -1
  34. package/bundle/typescript/src/commands/game/sideQuest/utilities/input-history.js +5 -3
  35. package/bundle/typescript/src/commands/game/sideQuest/utilities/input-history.js.map +1 -1
  36. package/bundle/typescript/src/commands/game/sideQuest/utilities/line-editor.d.ts +81 -0
  37. package/bundle/typescript/src/commands/game/sideQuest/utilities/line-editor.js +197 -0
  38. package/bundle/typescript/src/commands/game/sideQuest/utilities/line-editor.js.map +1 -0
  39. package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js +21 -3
  40. package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js.map +1 -1
  41. package/package.json +1 -1
@@ -6,6 +6,7 @@ import { Logger } from './utilities/logger.js';
6
6
  import { getArchetype, outfitArchetype } from './archetypes.js';
7
7
  import { STANCE_CYCLE } from './models/player.js';
8
8
  import { AutoFight } from './utilities/auto-fight.js';
9
+ import { attachLineEditor, attachArrowMovement } from './utilities/line-editor.js';
9
10
  import { attachInputHistory } from './utilities/input-history.js';
10
11
  import { TERMINAL_RESET_SEQUENCE } from './utilities/terminal-reset.js';
11
12
  import { readSave } from './utilities/persistence.js';
@@ -333,167 +334,188 @@ export async function main(playerName, sceneSeed, options) {
333
334
  // the REAL wiring against a real blessed textbox -- see the note on
334
335
  // attachInputHistory for why that turned out to be possible.
335
336
  const history = attachInputHistory(game.inputBox, () => screen.render());
336
- game.inputBox.key(['enter'], () => {
337
- void (async () => {
338
- try {
339
- const input = game.inputBox.getValue();
340
- // Recorded BEFORE the box is cleared below, and before any
341
- // early return in the async body -- a command that errors is
342
- // still a command you typed and will want to edit and retry.
337
+ // ONE SUBMIT PATH (2026-09-01): Enter and the arrow-key moves both
338
+ // land here. Extracted so an arrow-walk runs exactly what a typed
339
+ // "go north" runs -- echo, transcript, panels, focus restoration --
340
+ // rather than a second, drifting copy of it. `recordHistory` is off
341
+ // for the arrows: CTRL+Up should step through what you TYPED, not
342
+ // every step you took.
343
+ const submitLine = async (input, opts = {}) => {
344
+ try {
345
+ // Recorded BEFORE the box is cleared below, and before any
346
+ // early return in the async body -- a command that errors is
347
+ // still a command you typed and will want to edit and retry.
348
+ if (opts.recordHistory !== false)
343
349
  history.remember(input);
344
- // Typing takes over: any submitted command cancels a pending
345
- // auto-fight action (the interruptible beat -- see
346
- // utilities/auto-fight.ts). The next settled exchange re-arms it.
347
- game.autoFight.cancelPending();
348
- // Clear the box the moment the command is submitted, not after
349
- // it resolves -- a slow command (combat narration beats, an AI
350
- // round trip on a call) used to leave the typed text sitting in
351
- // the box for seconds, and worse, the late clear would wipe
352
- // whatever the player had started typing NEXT during the wait.
353
- game.inputBox.clearValue();
350
+ // Typing takes over: any submitted command cancels a pending
351
+ // auto-fight action (the interruptible beat -- see
352
+ // utilities/auto-fight.ts). The next settled exchange re-arms it.
353
+ game.autoFight.cancelPending();
354
+ // Clear the box the moment the command is submitted, not after
355
+ // it resolves -- a slow command (combat narration beats, an AI
356
+ // round trip on a call) used to leave the typed text sitting in
357
+ // the box for seconds, and worse, the late clear would wipe
358
+ // whatever the player had started typing NEXT during the wait.
359
+ game.inputBox.clearValue();
360
+ screen.render();
361
+ // The transcript reads like the session: the typed command
362
+ // first, the game's answer after (see Logger.transcript).
363
+ if (input.trim().length > 0)
364
+ gameLog.transcript(`> ${input}`);
365
+ // TURN BLOCKS (readability pass): echo the command into the
366
+ // visible log too, behind a blank line, so each command's
367
+ // output reads as its own block -- BEFORE handleInput, so a
368
+ // slow command (AI round trip, combat beats) shows what was
369
+ // asked while it works. Cyan: blessed has no dim tag and gray
370
+ // is banned; cyan is already this game's machine voice.
371
+ // pushLine, not Logger -- the transcript line above already
372
+ // recorded it. "clear" is exempt (echo-then-wipe is noise),
373
+ // and "say" keeps only the blank separator -- your words
374
+ // already land as the yellow speech line, and "> say hoi"
375
+ // above "hoi" read as a stutter (playtest note).
376
+ const echoVerb = input.trim().split(' ')[0]?.toLowerCase();
377
+ // MENU commands (player direction): reference panels render in
378
+ // the Mechanics column, not the world log -- the narrative
379
+ // stays narrative, and "contacts" doesn't scroll the fight off
380
+ // the screen. These verbs echo into the panel (as its divider)
381
+ // instead of the log. Transactional verbs (docwagon, buy...)
382
+ // stay in the world log: their output is things HAPPENING.
383
+ const isMenuVerb = MENU_VERBS.has(echoVerb ?? '');
384
+ // An arrow-key step is not a line you typed: no "> move south"
385
+ // in the log for it (user, 2026-09-01) -- the transcript FILE
386
+ // still records it, the screen does not.
387
+ if (input.trim().length > 0 && echoVerb !== 'clear' && !isMenuVerb && opts.echo !== false) {
388
+ game.logBox.pushLine('');
389
+ if (echoVerb !== 'say') {
390
+ game.logBox.pushLine(`{cyan-fg}> ${input.trim()}{/cyan-fg}`);
391
+ }
392
+ game.followLog();
354
393
  screen.render();
355
- // The transcript reads like the session: the typed command
356
- // first, the game's answer after (see Logger.transcript).
357
- if (input.trim().length > 0)
358
- gameLog.transcript(`> ${input}`);
359
- // TURN BLOCKS (readability pass): echo the command into the
360
- // visible log too, behind a blank line, so each command's
361
- // output reads as its own block -- BEFORE handleInput, so a
362
- // slow command (AI round trip, combat beats) shows what was
363
- // asked while it works. Cyan: blessed has no dim tag and gray
364
- // is banned; cyan is already this game's machine voice.
365
- // pushLine, not Logger -- the transcript line above already
366
- // recorded it. "clear" is exempt (echo-then-wipe is noise),
367
- // and "say" keeps only the blank separator -- your words
368
- // already land as the yellow speech line, and "> say hoi"
369
- // above "hoi" read as a stutter (playtest note).
370
- const echoVerb = input.trim().split(' ')[0]?.toLowerCase();
371
- // MENU commands (player direction): reference panels render in
372
- // the Mechanics column, not the world log -- the narrative
373
- // stays narrative, and "contacts" doesn't scroll the fight off
374
- // the screen. These verbs echo into the panel (as its divider)
375
- // instead of the log. Transactional verbs (docwagon, buy...)
376
- // stay in the world log: their output is things HAPPENING.
377
- const isMenuVerb = MENU_VERBS.has(echoVerb ?? '');
378
- if (input.trim().length > 0 && echoVerb !== 'clear' && !isMenuVerb) {
379
- game.logBox.pushLine('');
380
- if (echoVerb !== 'say') {
381
- game.logBox.pushLine(`{cyan-fg}> ${input.trim()}{/cyan-fg}`);
382
- }
394
+ }
395
+ const response = await game.handleInput(input); // handleInput is the method that processes commands
396
+ if (['take', 'equip', 'unequip'].includes(input.split(' ')[0])) {
397
+ // Example usage: update the inventory with a new list of items
398
+ game.updateInventory(game.player.inventory, capitalCase(game.scene.getCurrencyType()));
399
+ game.updateEquipment(game.player.equipment);
400
+ }
401
+ // Unconditional (matrix ruling 2026-08-24): the minimap must
402
+ // blink OUT on "jack in" (no meat space in VR) and back IN on
403
+ // "jack out" -- and movement, barriers, and fog all shift it
404
+ // too. The refresh is a ~20-room BFS; cheap enough per turn.
405
+ game.updateExits(game.player.currentLocation);
406
+ // Unconditional (not gated on the verb typed) since a call can
407
+ // also end on the NPC's own initiative -- this stays in sync
408
+ // with whatever state actually resulted, not just what the
409
+ // player directly asked for.
410
+ game.updateStatus();
411
+ if (input.split(' ')[0] === 'clear') {
412
+ // valign:'bottom' on both panes (see initLogBox) keeps
413
+ // post-clear text entering at the prompt edge; a plain wipe
414
+ // is all that's needed.
415
+ game.logBox.setContent('');
416
+ game.metaBox?.setContent('');
417
+ }
418
+ if (response)
419
+ gameLog.transcript(response);
420
+ if (response === null) {
421
+ screen.render();
422
+ gameLog.write(`<<<<<<<<--------- Terminating game`);
423
+ process.exit(0); // Exit the game
424
+ }
425
+ // Empty responses stop printing blank filler -- the turn-block
426
+ // echo above is the separator now.
427
+ if (response) {
428
+ // Route on the verb the game actually RAN, not the typed
429
+ // word: a corrected typo ("sjeet" -> "sheet") must still
430
+ // land its menu in the panel. The correction receipt line
431
+ // stays in the world log (standing ruling: it's the only
432
+ // receipt for a command you didn't type).
433
+ const ranMenuVerb = MENU_VERBS.has(game.lastResolvedVerb || echoVerb || '');
434
+ let panelBody = response;
435
+ if (ranMenuVerb && !isMenuVerb && response.startsWith('(read ')) {
436
+ const nl = response.indexOf('\n');
437
+ const receipt = nl === -1 ? response : response.slice(0, nl);
438
+ panelBody = nl === -1 ? '' : response.slice(nl + 1);
439
+ game.logBox.pushLine(receipt);
383
440
  game.followLog();
384
- screen.render();
385
- }
386
- const response = await game.handleInput(input); // handleInput is the method that processes commands
387
- if (['take', 'equip', 'unequip'].includes(input.split(' ')[0])) {
388
- // Example usage: update the inventory with a new list of items
389
- game.updateInventory(game.player.inventory, capitalCase(game.scene.getCurrencyType()));
390
- game.updateEquipment(game.player.equipment);
391
- }
392
- // Unconditional (matrix ruling 2026-08-24): the minimap must
393
- // blink OUT on "jack in" (no meat space in VR) and back IN on
394
- // "jack out" -- and movement, barriers, and fog all shift it
395
- // too. The refresh is a ~20-room BFS; cheap enough per turn.
396
- game.updateExits(game.player.currentLocation);
397
- // Unconditional (not gated on the verb typed) since a call can
398
- // also end on the NPC's own initiative -- this stays in sync
399
- // with whatever state actually resulted, not just what the
400
- // player directly asked for.
401
- game.updateStatus();
402
- if (input.split(' ')[0] === 'clear') {
403
- // valign:'bottom' on both panes (see initLogBox) keeps
404
- // post-clear text entering at the prompt edge; a plain wipe
405
- // is all that's needed.
406
- game.logBox.setContent('');
407
- game.metaBox?.setContent('');
408
441
  }
409
- if (response)
410
- gameLog.transcript(response);
411
- if (response === null) {
442
+ if (ranMenuVerb && panelBody) {
443
+ // pushLine, NOT insertBottom: insertBottom targets the
444
+ // bottom of the VISIBLE view, and in a no-render loop it
445
+ // reuses the same index -- every menu rendered bottom-up
446
+ // (player screenshot). pushLine appends to the content.
447
+ // Divider names the command as RUN: typed args survive, a
448
+ // corrected verb replaces the typo'd one.
449
+ const dividerLabel = isMenuVerb
450
+ ? input.trim()
451
+ : [game.lastResolvedVerb, ...input.trim().split(' ').slice(1)].join(' ').trim();
452
+ game.metaBox.pushLine(`{blue-fg}── ${dividerLabel} ──{/blue-fg}`);
453
+ for (const line of panelBody.split('\n')) {
454
+ game.metaBox.pushLine(line);
455
+ }
456
+ game.metaBox.scrollTo(game.metaBox.getScrollHeight());
412
457
  screen.render();
413
- gameLog.write(`<<<<<<<<--------- Terminating game`);
414
- process.exit(0); // Exit the game
415
458
  }
416
- // Empty responses stop printing blank filler -- the turn-block
417
- // echo above is the separator now.
418
- if (response) {
419
- // Route on the verb the game actually RAN, not the typed
420
- // word: a corrected typo ("sjeet" -> "sheet") must still
421
- // land its menu in the panel. The correction receipt line
422
- // stays in the world log (standing ruling: it's the only
423
- // receipt for a command you didn't type).
424
- const ranMenuVerb = MENU_VERBS.has(game.lastResolvedVerb || echoVerb || '');
425
- let panelBody = response;
426
- if (ranMenuVerb && !isMenuVerb && response.startsWith('(read ')) {
427
- const nl = response.indexOf('\n');
428
- const receipt = nl === -1 ? response : response.slice(0, nl);
429
- panelBody = nl === -1 ? '' : response.slice(nl + 1);
430
- game.logBox.pushLine(receipt);
431
- game.followLog();
432
- }
433
- if (ranMenuVerb && panelBody) {
434
- // pushLine, NOT insertBottom: insertBottom targets the
435
- // bottom of the VISIBLE view, and in a no-render loop it
436
- // reuses the same index -- every menu rendered bottom-up
437
- // (player screenshot). pushLine appends to the content.
438
- // Divider names the command as RUN: typed args survive, a
439
- // corrected verb replaces the typo'd one.
440
- const dividerLabel = isMenuVerb
441
- ? input.trim()
442
- : [game.lastResolvedVerb, ...input.trim().split(' ').slice(1)].join(' ').trim();
443
- game.metaBox.pushLine(`{blue-fg}── ${dividerLabel} ──{/blue-fg}`);
444
- for (const line of panelBody.split('\n')) {
445
- game.metaBox.pushLine(line);
446
- }
447
- game.metaBox.scrollTo(game.metaBox.getScrollHeight());
448
- screen.render();
449
- }
450
- else if (!ranMenuVerb) {
451
- game.logBox.pushLine(response);
452
- game.followLog();
453
- }
459
+ else if (!ranMenuVerb) {
460
+ game.logBox.pushLine(response);
461
+ game.followLog();
454
462
  }
455
463
  }
456
- catch (error) {
457
- // A crashed command must FAIL VISIBLY -- the old silent
458
- // log-and-return left the player staring at a game that
459
- // apparently ignored them (real session: a puzzle-data crash
460
- // made "search" a no-op five times running, with the errors
461
- // only in the log file).
462
- gameLog.error(`Error handling input: ${error}`);
463
- game.logBox.pushLine(`{red-fg}Something glitched handling that command -- it's been logged. The game is still running.{/red-fg}`);
464
- game.followLog();
464
+ }
465
+ catch (error) {
466
+ // A crashed command must FAIL VISIBLY -- the old silent
467
+ // log-and-return left the player staring at a game that
468
+ // apparently ignored them (real session: a puzzle-data crash
469
+ // made "search" a no-op five times running, with the errors
470
+ // only in the log file).
471
+ gameLog.error(`Error handling input: ${error}`);
472
+ game.logBox.pushLine(`{red-fg}Something glitched handling that command -- it's been logged. The game is still running.{/red-fg}`);
473
+ game.followLog();
474
+ }
475
+ finally {
476
+ // Focus restoration runs on EVERY path -- the same real session
477
+ // showed that when a command threw, this block (then inside the
478
+ // try) was skipped, the input reader died, and the player
479
+ // couldn't type at all ("focus is being removed").
480
+ //
481
+ // NEVER blind-focus() the input box here. Blessed's _focus() has
482
+ // no old === el guard, so focusing the box while it's already
483
+ // focused fires a self-blur that cancels the active input reader
484
+ // and starts another -- and because the reader attaches its
485
+ // keypress listener on a DELAYED tick, a fast (all-microtask)
486
+ // command lands this cancel while the previous attach is still
487
+ // pending: the cancel removes nothing, both attaches then land,
488
+ // and the orphaned listener doubles every subsequent keystroke
489
+ // (found via a real session typing "exit" and getting "eexxiitt").
490
+ // The submit path already re-focuses the box internally
491
+ // (rewindFocus), so the common case needs no touch at all; only
492
+ // actually restart things when focus genuinely went elsewhere
493
+ // (e.g. a lockpick/hack minigame took the screen) or reading
494
+ // somehow stopped while still focused.
495
+ const inputBox = game.inputBox;
496
+ if (screen.focused !== inputBox) {
497
+ inputBox.focus();
465
498
  }
466
- finally {
467
- // Focus restoration runs on EVERY path -- the same real session
468
- // showed that when a command threw, this block (then inside the
469
- // try) was skipped, the input reader died, and the player
470
- // couldn't type at all ("focus is being removed").
471
- //
472
- // NEVER blind-focus() the input box here. Blessed's _focus() has
473
- // no old === el guard, so focusing the box while it's already
474
- // focused fires a self-blur that cancels the active input reader
475
- // and starts another -- and because the reader attaches its
476
- // keypress listener on a DELAYED tick, a fast (all-microtask)
477
- // command lands this cancel while the previous attach is still
478
- // pending: the cancel removes nothing, both attaches then land,
479
- // and the orphaned listener doubles every subsequent keystroke
480
- // (found via a real session typing "exit" and getting "eexxiitt").
481
- // The submit path already re-focuses the box internally
482
- // (rewindFocus), so the common case needs no touch at all; only
483
- // actually restart things when focus genuinely went elsewhere
484
- // (e.g. a lockpick/hack minigame took the screen) or reading
485
- // somehow stopped while still focused.
486
- const inputBox = game.inputBox;
487
- if (screen.focused !== inputBox) {
488
- inputBox.focus();
489
- }
490
- else if (!inputBox._reading) {
491
- inputBox.readInput();
492
- }
493
- screen.render();
499
+ else if (!inputBox._reading) {
500
+ inputBox.readInput();
494
501
  }
495
- })();
502
+ screen.render();
503
+ }
504
+ };
505
+ game.inputBox.key(['enter'], () => {
506
+ void submitLine(game.inputBox.getValue());
496
507
  });
508
+ // THE ARROW KEYS ARE THE COMPASS (user request 2026-09-01): with an
509
+ // empty box, Up/Down/Left/Right STEP a cell north/south/west/east (the
510
+ // tactical "move", not the room-leaving "go" -- user correction); with
511
+ // text in the box they belong to the line editor (Left/Right move
512
+ // the caret, CTRL+Left/Right walk the words) and Up/Down do nothing.
513
+ // History moved to CTRL+Up/Down to make room. The editor is attached
514
+ // AFTER attachInputHistory so the swapped reader is in place before
515
+ // any keystroke; both are exported wiring, driven by the tests in
516
+ // utilities/line-editor.test.ts against a real blessed textbox.
517
+ attachLineEditor(game.inputBox, () => screen.render());
518
+ attachArrowMovement(game.inputBox, (cmd) => { void submitLine(cmd, { recordHistory: false, echo: false }); });
497
519
  }
498
520
  catch (error) {
499
521
  gameLog.error(error);
@@ -1 +1 @@
1
- {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../../../../../src/commands/game/sideQuest/ui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../../../../../src/commands/game/sideQuest/ui.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EACL,MAAM,EACN,IAAI,GACL,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAqB,MAAM,4BAA4B,CAAC;AACtG,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,EAAE,EAAE,MAAM,+BAA+B,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACrF,OAAO,EAAE,YAAY,EAAe,MAAM,sBAAsB,CAAC;AAEjE,qEAAqE;AACrE,mEAAmE;AACnE,oEAAoE;AACpE,qEAAqE;AACrE,oEAAoE;AACpE,oEAAoE;AACpE,0BAA0B;AAC1B,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IACzB,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI;IACnE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM;IAC/E,qEAAqE;IACrE,6DAA6D;IAC7D,SAAS;CACV,CAAC,CAAC;AAEH,uEAAuE;AACvE,sEAAsE;AACtE,wEAAwE;AACxE,wEAAwE;AACxE,uEAAuE;AACvE,wEAAwE;AACxE,yEAAyE;AACzE,wEAAwE;AACxE,wEAAwE;AACxE,iCAAiC;AACjC,yEAAyE;AACzE,wEAAwE;AACxE,wEAAwE;AACxE,sEAAsE;AACtE,uEAAuE;AACvE,yBAAyB;AACzB,CAAC;IACC,MAAM,GAAG,GAAI,OAMX,CAAC,OAAO,CAAC;IACX,MAAM,aAAa,GAAG,GAAG,CAAC,SAAS,CAAC;IACpC,GAAG,CAAC,SAAS,GAAG,UAAU,IAAqB,EAAE,CAAU;QACzD,MAAM,KAAK,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9E,IAAI,KAAK,IAAI,OAAO,IAAI,KAAK,IAAI,OAAO;YAAE,OAAO,CAAC,CAAC;QACnD,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC;IACF,sEAAsE;IACtE,qEAAqE;IACrE,MAAM,WAAW,GAAG,4EAA4E,CAAC;IACjG,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,IAAI,WAAW,GAAG,EAAE,GAAG,CAAC,CAAC;AAC9E,CAAC;AA4CD,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,UAAkB,EAClB,SAAyB,EACzB,OAAwB;IAExB,qEAAqE;IACrE,sEAAsE;IACtE,sEAAsE;IACtE,qEAAqE;IACrE,qEAAqE;IACrE,iEAAiE;IACjE,wBAAwB;IACxB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,kBAAkB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CAAC,yDAAyD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,iDAAiD,CAAC,CAAC;YAChK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACtB,IAAI,CAAC;gBAAC,kBAAkB,CAAC,OAAO,CAAC,YAAa,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,6BAA6B,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kEAAkE;IAClE,kEAAkE;IAClE,kEAAkE;IAClE,4DAA4D;IAC5D,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACnE,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACjD,CAAC;IAED,yBAAyB;IACzB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC5B,QAAQ,EAAE,IAAI;QACd,iEAAiE;QACjE,mEAAmE;QACnE,+DAA+D;QAC/D,gEAAgE;QAChE,mCAAmC;QACnC,WAAW,EAAE,IAAI;QACjB,KAAK,EAAE,2BAA2B;KACnC,CAAC,CAAC;IAEH,kEAAkE;IAClE,oEAAoE;IACpE,sEAAsE;IACtE,sEAAsE;IACtE,uEAAuE;IACvE,sEAAsE;IACtE,mEAAmE;IACnE,qEAAqE;IACrE,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,IAAI,CAAC;YAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;QAC7D,mEAAmE;QACnE,+DAA+D;QAC/D,iEAAiE;QACjE,IAAI,CAAC;YAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACpF,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,GAAY,EAAE,EAAE;QAChD,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7E,IAAI,CAAC;YAAC,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,MAAM,MAAM,EAAE,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,gCAAgC,CAAC,CAAC;QAC7G,eAAe,EAAE,CAAC;QAClB,kEAAkE;QAClE,gDAAgD;QAChD,eAAe,CAAC,cAAc,KAAK,MAAM,MAAM,EAAE,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC5D,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAC9D,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7C,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE;QACvB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAGH,oBAAoB;IACpB,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAEhE,iEAAiE;IACjE,sEAAsE;IACtE,8DAA8D;IAC9D,iEAAiE;IACjE,oEAAoE;IACpE,kDAAkD;IAClD,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;QACC,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,GAAG,IAAe,EAAE,EAAE;YACtD,IAAI,CAAC;gBACH,OAAO,CAAC,KAAK,CAAC,YAAY,KAAK,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC/C,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC;oBACzC,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpE,CAAC;YAAC,MAAM,CAAC,CAAC,oCAAoC,CAAC,CAAC;QAClD,CAAC,CAAC;QACF,OAAO,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,CAAC;QAEH,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC;YACrB,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,4CAA4C;YACzD,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;QAEH,oEAAoE;QACpE,gEAAgE;QAChE,kEAAkE;QAClE,8DAA8D;QAC9D,oEAAoE;QACpE,+DAA+D;QAC/D,qEAAqE;QACrE,IAAI,MAAc,CAAC;QACnB,IAAI,UAAmC,CAAC;QACxC,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAC5C,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACb,gEAAgE;gBAChE,gEAAgE;gBAChE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,kBAAkB;oBAC7C,CAAC,CAAC,kDAAkD,IAAI,CAAC,OAAO,0BAA0B,YAAY,gCAAgC;oBACtI,CAAC,CAAC,iCAAiC,IAAI,CAAC,KAAK,iCAAiC,CAAC,CAAC;gBAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;YACvC,MAAM,GAAG,IAAI,MAAM,CAAC;gBAClB,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,aAAa,EAAE,KAAK;gBACpB,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE;aACnD,CAAC,CAAC;YACH,MAAM,CAAC,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAClD,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;YACpF,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACnC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QACjC,CAAC;QAED,2BAA2B;QAC3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,IAAI,SAAS,EAAE,UAAU,CAAC,CAAC;QAE1F,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAE/C,mEAAmE;QACnE,iEAAiE;QACjE,kEAAkE;QAClE,kEAAkE;QAClE,8DAA8D;QAC9D,wDAAwD;QACxD,EAAE;QACF,oEAAoE;QACpE,kEAAkE;QAClE,mEAAmE;QACnE,qEAAqE;QACrE,qEAAqE;QACrE,6DAA6D;QAC7D,EAAE;QACF,qEAAqE;QACrE,oEAAoE;QACpE,oEAAoE;QACpE,4DAA4D;QAC5D,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC1B,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,IAAI,CAAC;oBACH,IAAI,IAAI,CAAC,UAAU;wBAAE,OAAO;oBAC5B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAC3B,CAAC;gBAAC,MAAM,CAAC;oBACP,+DAA+D;gBACjE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,oDAAoD;QACpD,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB;YACrC,CAAC,CAAC,cAAc,OAAO,CAAC,gBAAgB,kBAAkB;YAC1D,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,oFAAoF;QAC5H,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,+CAA+C;QAEnF,mEAAmE;QACnE,8DAA8D;QAC9D,iEAAiE;QACjE,iEAAiE;QACjE,oEAAoE;QACpE,oEAAoE;QACpE,EAAE;QACF,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,qBAAqB;QACrB,EAAE;QACF,oEAAoE;QACpE,+DAA+D;QAC/D,4CAA4C;QAC5C,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;YACzF,MAAM,gBAAgB,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC,CAAC;YACxE,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI;gBAAE,OAAO;YAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAE5B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;QACvF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC9C,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,uEAAuE;QACvE,qEAAqE;QACrE,0DAA0D;QAC1D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE;YAC9B,gEAAgE;YAChE,+DAA+D;YAC/D,kEAAkE;YAClE,oBAAoB;YACpB,MAAM,QAAQ,GAAG,GAAG,EAAE;gBACpB,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACnC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC,CAAC;YACF,QAAQ,EAAE,CAAC;YACX,YAAY,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAErD,uDAAuD;YACvD,4DAA4D;YAC5D,iEAAiE;YACjE,yDAAyD;YACzD,2DAA2D;YAC3D,2DAA2D;YAC3D,gEAAgE;YAChE,4DAA4D;YAC5D,6CAA6C;YAC7C,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,KAAK,CAAC,KAAK,IAAI,EAAE;oBACf,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;oBAClD,IAAI,CAAC,GAAG;wBAAE,OAAO;oBACjB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;oBAChE,MAAM,CAAC,GAAG,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;oBACpF,OAAO,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;oBAC5B,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,CAAC,CAAC,EAAE,CAAC;gBACL,OAAO;YACT,CAAC;YAED,MAAM,KAAK,GAAG,YAAY,CAAC;YAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YAC/E,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;YAC/B,qEAAqE;YACrE,kEAAkE;YAClE,iEAAiE;YACjE,iEAAiE;YACjE,MAAM,KAAK,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;YACtF,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,WAAW,EAAE,OAAO,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACvF,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,uDAAuD;QACvD,qEAAqE;QACrE,uCAAuC;QACvC,EAAE;QACF,qEAAqE;QACrE,+DAA+D;QAC/D,kEAAkE;QAClE,oDAAoD;QACpD,EAAE;QACF,iEAAiE;QACjE,qEAAqE;QACrE,qEAAqE;QACrE,iCAAiC;QACjC,qEAAqE;QACrE,oEAAoE;QACpE,6DAA6D;QAC7D,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAEzE,mEAAmE;QACnE,kEAAkE;QAClE,oEAAoE;QACpE,oEAAoE;QACpE,kEAAkE;QAClE,uBAAuB;QACvB,MAAM,UAAU,GAAG,KAAK,EAAE,KAAa,EAAE,OAAoD,EAAE,EAAiB,EAAE;YAC9G,IAAI,CAAC;gBACH,2DAA2D;gBAC3D,6DAA6D;gBAC7D,6DAA6D;gBAC7D,IAAI,IAAI,CAAC,aAAa,KAAK,KAAK;oBAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAE1D,6DAA6D;gBAC7D,mDAAmD;gBACnD,kEAAkE;gBAClE,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;gBAE/B,+DAA+D;gBAC/D,+DAA+D;gBAC/D,gEAAgE;gBAChE,4DAA4D;gBAC5D,+DAA+D;gBAC/D,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAC3B,MAAM,CAAC,MAAM,EAAE,CAAC;gBAEhB,2DAA2D;gBAC3D,0DAA0D;gBAC1D,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,CAAC,UAAU,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;gBAE9D,4DAA4D;gBAC5D,0DAA0D;gBAC1D,4DAA4D;gBAC5D,4DAA4D;gBAC5D,8DAA8D;gBAC9D,wDAAwD;gBACxD,4DAA4D;gBAC5D,4DAA4D;gBAC5D,yDAAyD;gBACzD,0DAA0D;gBAC1D,iDAAiD;gBACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;gBAC3D,+DAA+D;gBAC/D,2DAA2D;gBAC3D,+DAA+D;gBAC/D,+DAA+D;gBAC/D,6DAA6D;gBAC7D,2DAA2D;gBAC3D,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;gBAClD,+DAA+D;gBAC/D,8DAA8D;gBAC9D,yCAAyC;gBACzC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;oBAC1F,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBACzB,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;wBACvB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;oBAC/D,CAAC;oBACD,IAAI,CAAC,SAAS,EAAE,CAAC;oBACjB,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,oDAAoD;gBAEpG,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/D,+DAA+D;oBAC/D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;oBACvF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC9C,CAAC;gBAED,6DAA6D;gBAC7D,8DAA8D;gBAC9D,6DAA6D;gBAC7D,6DAA6D;gBAC7D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;gBAE9C,+DAA+D;gBAC/D,6DAA6D;gBAC7D,2DAA2D;gBAC3D,6BAA6B;gBAC7B,IAAI,CAAC,YAAY,EAAE,CAAC;gBAEpB,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;oBACpC,uDAAuD;oBACvD,4DAA4D;oBAC5D,wBAAwB;oBACxB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;oBAC3B,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;gBAC/B,CAAC;gBAED,IAAI,QAAQ;oBAAE,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAE3C,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;oBACtB,MAAM,CAAC,MAAM,EAAE,CAAC;oBAChB,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;oBACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;gBACnC,CAAC;gBAED,+DAA+D;gBAC/D,mCAAmC;gBACnC,IAAI,QAAQ,EAAE,CAAC;oBACb,yDAAyD;oBACzD,yDAAyD;oBACzD,0DAA0D;oBAC1D,yDAAyD;oBACzD,0CAA0C;oBAC1C,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,IAAI,QAAQ,IAAI,EAAE,CAAC,CAAC;oBAC5E,IAAI,SAAS,GAAG,QAAQ,CAAC;oBACzB,IAAI,WAAW,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAChE,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;wBAClC,MAAM,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC7D,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;wBACpD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;wBAC9B,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,CAAC;oBACD,IAAI,WAAW,IAAI,SAAS,EAAE,CAAC;wBAC7B,uDAAuD;wBACvD,yDAAyD;wBACzD,yDAAyD;wBACzD,wDAAwD;wBACxD,0DAA0D;wBAC1D,0CAA0C;wBAC1C,MAAM,YAAY,GAAG,UAAU;4BAC7B,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;4BACd,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;wBAClF,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,YAAY,eAAe,CAAC,CAAC;wBAClE,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;4BACzC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC9B,CAAC;wBACD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;wBACtD,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClB,CAAC;yBAAM,IAAI,CAAC,WAAW,EAAE,CAAC;wBACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;wBAC/B,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,wDAAwD;gBACxD,wDAAwD;gBACxD,6DAA6D;gBAC7D,4DAA4D;gBAC5D,yBAAyB;gBACzB,OAAO,CAAC,KAAK,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;gBAChD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,2GAA2G,CAAC,CAAC;gBAClI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,CAAC;oBAAS,CAAC;gBACT,gEAAgE;gBAChE,gEAAgE;gBAChE,0DAA0D;gBAC1D,mDAAmD;gBACnD,EAAE;gBACF,iEAAiE;gBACjE,8DAA8D;gBAC9D,iEAAiE;gBACjE,4DAA4D;gBAC5D,8DAA8D;gBAC9D,+DAA+D;gBAC/D,gEAAgE;gBAChE,+DAA+D;gBAC/D,mEAAmE;gBACnE,wDAAwD;gBACxD,gEAAgE;gBAChE,8DAA8D;gBAC9D,6DAA6D;gBAC7D,uCAAuC;gBACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAmE,CAAC;gBAC1F,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBAChC,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACnB,CAAC;qBAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBAC9B,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACvB,CAAC;gBAED,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,CAAC;QACL,CAAC,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE;YAChC,KAAK,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,oEAAoE;QACpE,uEAAuE;QACvE,uEAAuE;QACvE,kEAAkE;QAClE,qEAAqE;QACrE,qEAAqE;QACrE,oEAAoE;QACpE,kEAAkE;QAClE,gEAAgE;QAChE,gBAAgB,CAAC,IAAI,CAAC,QAAmC,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAClF,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,GAAG,KAAK,UAAU,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,qEAAqE;AACrE,0EAA0E;AAC1E,2EAA2E;AAC3E,yEAAyE;AACzE,4DAA4D;AAC5D,uDAAuD;AACvD,EAAE;AACF,oEAAoE;AACpE,kEAAkE;AAClE,wEAAwE;AACxE,iEAAiE;AACjE,0EAA0E;AAC1E,wCAAwC;AACxC,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAc;IAC9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;AACH,CAAC"}
@@ -52,5 +52,19 @@ export interface ILifestyleTier {
52
52
  homeDescription: string;
53
53
  }
54
54
  export declare const LIFESTYLE_TIERS: readonly ILifestyleTier[];
55
+ /**
56
+ * TWO CLOCKS, ONE BOOK. The web chargen charges the FIRST MONTH at the
57
+ * book's monthly prices (core p.373: Squatter 500 ... High 10,000, Luxury
58
+ * 100,000) -- canon, kept exactly. The `upkeep` above is PER JOB, collected
59
+ * on each homecoming: a deliberate pacing compression where a "month" is
60
+ * several jobs. Neither figure is a claim about the other; a reader
61
+ * comparing them across the seam should not "fix" either.
62
+ *
63
+ * THE TIER NAME IS THE BOOK'S. Core p.369 heads the fourth tier MIDDLE;
64
+ * an older seed type (ResidenceChoice.tier) spelled it "Medium", and the
65
+ * web's worksheet enum inherited that. The seam accepts both and
66
+ * canonicalizes, so nothing upstream has to change to be understood.
67
+ */
68
+ export declare function canonicalLifestyleTier(raw: string | undefined): string | undefined;
55
69
  /** One-line flavor note per consumable category, shown on shop shelves. */
56
70
  export declare function shelfNote(item: Item): string;
@@ -129,7 +129,36 @@ export const LIFESTYLE_TIERS = [
129
129
  homeDescription: 'An actual apartment: an autocook with flavor faucets, furniture nobody died on, and a bed you catch yourself missing mid-run. The closet safe keeps whatever you leave here, no matter where the next job takes you.' },
130
130
  { name: 'High', upkeep: 2500, restDice: 3, edgeBonus: 1, clearStunOnReturn: true, blurb: 'secure zone, housekeeping drone, a shower that erases whole jobs',
131
131
  homeDescription: 'A secure-zone flat that still doesn\'t feel like yours: biometric door, a housekeeping drone humming somewhere, a shower that erases whole jobs. The wall vault keeps whatever you leave here waiting, no matter where the next job takes you.' },
132
+ // LUXURY (added 2026-09-01): the book's top tier (core p.369, "100,000
133
+ // nuyen a month and up"), which the web chargen already sells and this
134
+ // table never had -- a Luxury-born runner used to fall through to the
135
+ // Squatter default. Per-JOB upkeep on this table's own scale (see the
136
+ // note on the two clocks below), the heavy-garage tier per Run Faster
137
+ // p.221's Luxury requirement.
138
+ { name: 'Luxury', upkeep: 10000, restDice: 4, edgeBonus: 2, clearStunOnReturn: true, blurb: 'the best of everything, guards included, and a view that costs more than most jobs pay',
139
+ homeDescription: 'A penthouse with its own astral ward and a household staff that never asks questions: real food, real quiet, guards on the door and a view that costs more than most jobs pay. The vault behind the study wall keeps whatever you leave here, no matter where the next job takes you.' },
132
140
  ];
141
+ /**
142
+ * TWO CLOCKS, ONE BOOK. The web chargen charges the FIRST MONTH at the
143
+ * book's monthly prices (core p.373: Squatter 500 ... High 10,000, Luxury
144
+ * 100,000) -- canon, kept exactly. The `upkeep` above is PER JOB, collected
145
+ * on each homecoming: a deliberate pacing compression where a "month" is
146
+ * several jobs. Neither figure is a claim about the other; a reader
147
+ * comparing them across the seam should not "fix" either.
148
+ *
149
+ * THE TIER NAME IS THE BOOK'S. Core p.369 heads the fourth tier MIDDLE;
150
+ * an older seed type (ResidenceChoice.tier) spelled it "Medium", and the
151
+ * web's worksheet enum inherited that. The seam accepts both and
152
+ * canonicalizes, so nothing upstream has to change to be understood.
153
+ */
154
+ export function canonicalLifestyleTier(raw) {
155
+ if (raw === undefined || raw === null)
156
+ return undefined;
157
+ const wanted = String(raw).trim().toLowerCase();
158
+ if (wanted === 'medium')
159
+ return 'Middle';
160
+ return LIFESTYLE_TIERS.find(t => t.name.toLowerCase() === wanted)?.name;
161
+ }
133
162
  /** One-line flavor note per consumable category, shown on shop shelves. */
134
163
  export function shelfNote(item) {
135
164
  switch (item.category) {
@@ -1 +1 @@
1
- {"version":3,"file":"commerce.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/utilities/commerce.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commerce.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/utilities/commerce.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  /**
2
- * COMMAND HISTORY FOR THE INPUT BOX (gcCNQShcTSa9zyPGd: "better text
2
+ * COMMAND HISTORY FOR THE INPUT BOX, on CTRL+Up/Down since 2026-09-01 --
3
+ * the bare arrows became the compass (utilities/line-editor.ts).
4
+ * (gcCNQShcTSa9zyPGd: "better text
3
5
  * input -- Up arrow for previous submissions").
4
6
  *
5
7
  * PURE ON PURPOSE, and that is the whole design decision here. Keystroke
@@ -1,5 +1,7 @@
1
1
  /**
2
- * COMMAND HISTORY FOR THE INPUT BOX (gcCNQShcTSa9zyPGd: "better text
2
+ * COMMAND HISTORY FOR THE INPUT BOX, on CTRL+Up/Down since 2026-09-01 --
3
+ * the bare arrows became the compass (utilities/line-editor.ts).
4
+ * (gcCNQShcTSa9zyPGd: "better text
3
5
  * input -- Up arrow for previous submissions").
4
6
  *
5
7
  * PURE ON PURPOSE, and that is the whole design decision here. Keystroke
@@ -116,7 +118,7 @@ export class InputHistory {
116
118
  }
117
119
  }
118
120
  export function attachInputHistory(box, render, history = new InputHistory()) {
119
- box.key(['up'], () => {
121
+ box.key(['C-up'], () => {
120
122
  const recalled = history.up(box.getValue());
121
123
  // undefined means "nothing further back" -- leave the box alone
122
124
  // rather than clearing it or wrapping round to the oldest entry.
@@ -125,7 +127,7 @@ export function attachInputHistory(box, render, history = new InputHistory()) {
125
127
  box.setValue(recalled);
126
128
  render();
127
129
  });
128
- box.key(['down'], () => {
130
+ box.key(['C-down'], () => {
129
131
  const recalled = history.down();
130
132
  if (recalled === undefined)
131
133
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"input-history.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/utilities/input-history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"input-history.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/utilities/input-history.ts"],"names":[],"mappings":"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"}