@thegraid/hexlib 1.4.0 → 1.4.1

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 (49) hide show
  1. package/dist/game-play.d.ts +24 -9
  2. package/dist/game-play.d.ts.map +1 -1
  3. package/dist/game-play.js +58 -42
  4. package/dist/game-play.js.map +1 -1
  5. package/dist/game-setup.d.ts +47 -34
  6. package/dist/game-setup.d.ts.map +1 -1
  7. package/dist/game-setup.js +90 -72
  8. package/dist/game-setup.js.map +1 -1
  9. package/dist/game-state.d.ts +1 -1
  10. package/dist/game-state.d.ts.map +1 -1
  11. package/dist/game-state.js +2 -4
  12. package/dist/game-state.js.map +1 -1
  13. package/dist/hex.d.ts +10 -7
  14. package/dist/hex.d.ts.map +1 -1
  15. package/dist/hex.js +6 -6
  16. package/dist/hex.js.map +1 -1
  17. package/dist/meeple.d.ts +0 -1
  18. package/dist/meeple.d.ts.map +1 -1
  19. package/dist/meeple.js +1 -2
  20. package/dist/meeple.js.map +1 -1
  21. package/dist/player-panel.d.ts +138 -1
  22. package/dist/player-panel.d.ts.map +1 -1
  23. package/dist/player-panel.js +1 -1
  24. package/dist/player-panel.js.map +1 -1
  25. package/dist/player.d.ts +1 -3
  26. package/dist/player.d.ts.map +1 -1
  27. package/dist/player.js +7 -9
  28. package/dist/player.js.map +1 -1
  29. package/dist/scenario-parser.d.ts +12 -4
  30. package/dist/scenario-parser.d.ts.map +1 -1
  31. package/dist/scenario-parser.js +22 -14
  32. package/dist/scenario-parser.js.map +1 -1
  33. package/dist/stream-writer.d.ts +1 -0
  34. package/dist/stream-writer.d.ts.map +1 -1
  35. package/dist/stream-writer.js +1 -0
  36. package/dist/stream-writer.js.map +1 -1
  37. package/dist/table.d.ts +35 -34
  38. package/dist/table.d.ts.map +1 -1
  39. package/dist/table.js +8 -7
  40. package/dist/table.js.map +1 -1
  41. package/dist/tile-source.d.ts +1 -0
  42. package/dist/tile-source.d.ts.map +1 -1
  43. package/dist/tile-source.js +1 -0
  44. package/dist/tile-source.js.map +1 -1
  45. package/dist/tile.d.ts +6 -2
  46. package/dist/tile.d.ts.map +1 -1
  47. package/dist/tile.js +10 -6
  48. package/dist/tile.js.map +1 -1
  49. package/package.json +3 -3
@@ -5,11 +5,12 @@ import { Event } from "@thegraid/easeljs-module";
5
5
  import type { GameSetup, Scenario } from "./game-setup";
6
6
  import { GameState } from "./game-state";
7
7
  import { Hex, Hex1, HexMap, IdHex } from "./hex";
8
+ import { Meeple } from "./meeple";
8
9
  import { Player } from "./player";
9
- import { SetupElt } from "./scenario-parser";
10
10
  import { Table } from "./table";
11
11
  import { PlayerColor } from "./table-params";
12
12
  import { Tile } from "./tile";
13
+ import { ScenarioParser, SetupElt } from "./scenario-parser";
13
14
  /**
14
15
  * Event indicating a Tile has been placed on a Hex.
15
16
  *
@@ -33,8 +34,6 @@ declare class Move {
33
34
  */
34
35
  export declare class GamePlay0 {
35
36
  gameSetup: GameSetup;
36
- /** the latest GamePlay instance in this VM/context/process */
37
- static gamePlay: GamePlay0;
38
37
  static gpid: number;
39
38
  readonly id: number;
40
39
  readonly gameState: GameState;
@@ -44,8 +43,12 @@ export declare class GamePlay0 {
44
43
  recycleHex: Hex1;
45
44
  ll(n: number): boolean;
46
45
  get logWriter(): import("./stream-writer").LogWriter;
46
+ _allPlayers: Player[];
47
47
  get allPlayers(): Player[];
48
+ _allTiles: Tile[];
48
49
  get allTiles(): Tile[];
50
+ _allMeeples: Meeple[];
51
+ get allMeeples(): Meeple[];
49
52
  readonly hexMap: HexMap<Hex>;
50
53
  readonly redoMoves: {
51
54
  hex: Hex | IdHex;
@@ -114,22 +117,34 @@ export declare class GamePlay0 {
114
117
  */
115
118
  export declare class GamePlay extends GamePlay0 {
116
119
  readonly table: Table;
120
+ gameState: GameState;
117
121
  /** GamePlay is the GUI-augmented extension of GamePlay0; uses Table */
118
122
  constructor(gameSetup: GameSetup, scenario: Scenario);
119
123
  /** suitable for keybinding */
120
124
  unMove(): void;
121
125
  bindKeys(): void;
126
+ /** override! new ScenarioParser() when GameSetup -> parseScenario() */
127
+ makeScenarioParser(hexMap?: HexMap<Hex>): ScenarioParser;
128
+ scenarioParser: ScenarioParser;
129
+ /**
130
+ * Place Tiles and Meeples on HexMap, set GameState.
131
+ *
132
+ * new ScenarioParser(hexMap, gamePlay).parseScenario(scenario);
133
+ */
134
+ parseScenario(scenario: SetupElt): void;
135
+ /** save state of the current scenario; suitable for later parseScenario */
136
+ saveGame(): void;
137
+ /** GamePlay contribution to saved Scenario */
138
+ saveState(setupElt: SetupElt): void;
139
+ /** restore state from saveState() */
140
+ parseState(setupElt: SetupElt): void;
141
+ backlogIndex: number;
142
+ selectBacklog(incr?: number): void;
122
143
  /** enter debugger, with interesting values in local scope */
123
144
  debug(): void;
124
145
  /** when turnNumber auto-increments. */
125
146
  newTurnNumber(): void;
126
147
  readFileState(): void;
127
- backStates: Array<SetupElt>;
128
- /** setNextPlayer->startTurn (or Key['p']) */
129
- saveState(): void;
130
- nstate: number;
131
- /** move nstate to older(back=true, S-P) or newer(back=false, C-P) states in backStates */
132
- pickState(back?: boolean): void;
133
148
  clickDone(): void;
134
149
  clickConfirm(val: boolean): void;
135
150
  useReferee: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"game-play.d.ts","sourceRoot":"","sources":["../src/game-play.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"game-play.d.ts","sourceRoot":"","sources":["../src/game-play.ts"],"names":[],"mappings":"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"}
package/dist/game-play.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import { S, Undo, json, stime } from "@thegraid/common-lib";
2
- import { KeyBinder, blinkAndThen } from "@thegraid/easeljs-lib";
2
+ import { KeyBinder } from "@thegraid/easeljs-lib";
3
3
  import { Event } from "@thegraid/easeljs-module";
4
4
  import { GameState } from "./game-state";
5
5
  import { Hex } from "./hex";
6
- import { Player } from "./player";
7
6
  import { TP } from "./table-params";
8
7
  import { Tile } from "./tile";
8
+ import { ScenarioParser } from "./scenario-parser";
9
9
  /**
10
10
  * Event indicating a Tile has been placed on a Hex.
11
11
  *
@@ -33,19 +33,21 @@ class Move {
33
33
  */
34
34
  export class GamePlay0 {
35
35
  gameSetup;
36
- /** the latest GamePlay instance in this VM/context/process */
37
- static gamePlay;
38
36
  static gpid = 0;
39
- id = GamePlay0.gpid++;
40
- gameState = (this instanceof GamePlay) ? new GameState(this) : undefined;
37
+ id = GamePlay0.gpid++; // instance id of this GamePlay [debug help?]
38
+ gameState;
41
39
  get gamePhase() { return this.gameState.state; }
42
40
  isPhase(name) { return this.gamePhase === this.gameState.states[name]; }
43
41
  phaseDone(...args) { this.gameState.done(...args); }
44
42
  recycleHex;
45
43
  ll(n) { return TP.log > n; }
46
44
  get logWriter() { return this.gameSetup.logWriter; }
47
- get allPlayers() { return Player.allPlayers; }
48
- get allTiles() { return Tile.allTiles; }
45
+ _allPlayers = [];
46
+ get allPlayers() { return this._allPlayers; }
47
+ _allTiles = [];
48
+ get allTiles() { return this._allTiles; }
49
+ _allMeeples = [];
50
+ get allMeeples() { return this._allMeeples; }
49
51
  hexMap; // created by GameSetup; no districts until Table.layoutTable!
50
52
  redoMoves = [];
51
53
  // 2 models: move-by-move undo/redo OR write scenario-state to file and reload
@@ -119,7 +121,7 @@ export class GamePlay0 {
119
121
  }
120
122
  this.turnNumber = turnNumber;
121
123
  this.preGame = false;
122
- this.setCurPlayer(Player.allPlayers[0].nthPlayer(turnNumber));
124
+ this.setCurPlayer(this.allPlayers[0].nthPlayer(turnNumber));
123
125
  this.curPlayer.newTurn();
124
126
  }
125
127
  setCurPlayer(player) {
@@ -144,7 +146,7 @@ export class GamePlay0 {
144
146
  }
145
147
  /** update Counters (econ, expense, vp) for ALL players. */
146
148
  updateCounters() {
147
- // Player.allPlayers.forEach(player => player.setCounters(false));
149
+ // this.allPlayers.forEach(player => player.setCounters(false));
148
150
  this.hexMap.update();
149
151
  }
150
152
  logFailure(type, reqd, avail, toHex) {
@@ -205,10 +207,11 @@ export class GamePlay0 {
205
207
  */
206
208
  export class GamePlay extends GamePlay0 {
207
209
  table; // access to GUI (drag/drop) methods.
210
+ gameState = new GameState(this);
208
211
  /** GamePlay is the GUI-augmented extension of GamePlay0; uses Table */
209
212
  constructor(gameSetup, scenario) {
210
213
  super(gameSetup); // hexMap, history, gStats...
211
- Tile.gamePlay = this; // table
214
+ Tile.gamePlay = this; // provide pointer for all Tiles created.
212
215
  this.table = gameSetup.table;
213
216
  if (this.table.stage.canvas)
214
217
  this.bindKeys();
@@ -250,19 +253,54 @@ export class GamePlay extends GamePlay0 {
250
253
  KeyBinder.keyBinder.setKey('C-l', () => this.readFileState());
251
254
  KeyBinder.keyBinder.setKey('r', () => this.readFileState());
252
255
  KeyBinder.keyBinder.setKey('h', () => { this.table.textLog.visible = !this.table.textLog.visible; this.hexMap.update(); });
253
- // KeyBinder.keyBinder.setKey('U', { thisArg: this.gameState, func: this.gameState.undoAction, argVal: true })
254
- // KeyBinder.keyBinder.setKey('p', { thisArg: this, func: this.saveState, argVal: true })
255
- // KeyBinder.keyBinder.setKey('P', { thisArg: this, func: this.pickState, argVal: true })
256
- // KeyBinder.keyBinder.setKey('C-p', { thisArg: this, func: this.pickState, argVal: false }) // can't use Meta-P
257
- // KeyBinder.keyBinder.setKey('k', () => this.logWriter.showBacklog());
256
+ KeyBinder.keyBinder.setKey('P', () => this.selectBacklog(-1));
257
+ KeyBinder.keyBinder.setKey('N', () => this.selectBacklog(1));
258
+ KeyBinder.keyBinder.setKey('S', () => this.gameSetup.blinkThenRestart());
259
+ KeyBinder.keyBinder.setKey('C-s', () => this.gameSetup.blinkThenRestart(undefined, '{}'));
260
+ // blinkAndThen(this.hexMap.mapCont.markCont, () => this.gameSetup.restart({}));
258
261
  KeyBinder.keyBinder.setKey('D', () => this.debug());
259
- KeyBinder.keyBinder.setKey('C-s', () => {
260
- blinkAndThen(this.hexMap.mapCont.markCont, () => this.gameSetup.restart({}));
261
- });
262
262
  // diagnostics:
263
263
  table.undoShape.on(S.click, () => this.undoMove(), this);
264
264
  table.redoShape.on(S.click, () => this.redoMove(), this);
265
265
  }
266
+ /** override! new ScenarioParser() when GameSetup -> parseScenario() */
267
+ makeScenarioParser(hexMap = this.hexMap) {
268
+ return new ScenarioParser(hexMap, this);
269
+ }
270
+ scenarioParser;
271
+ /**
272
+ * Place Tiles and Meeples on HexMap, set GameState.
273
+ *
274
+ * new ScenarioParser(hexMap, gamePlay).parseScenario(scenario);
275
+ */
276
+ parseScenario(scenario) {
277
+ const scenarioParser = this.scenarioParser = this.makeScenarioParser();
278
+ this.logWriter.writeLine(`// GameSetup.parseScenario: ${scenario.Aname}`);
279
+ scenarioParser.parseScenario(scenario);
280
+ }
281
+ /** save state of the current scenario; suitable for later parseScenario */
282
+ saveGame() {
283
+ this.scenarioParser.saveState(this);
284
+ }
285
+ /** GamePlay contribution to saved Scenario */
286
+ saveState(setupElt) {
287
+ setupElt.coins = this.allPlayers.map(p => p.coins);
288
+ }
289
+ /** restore state from saveState() */
290
+ parseState(setupElt) {
291
+ const coins = setupElt.coins;
292
+ if (coins)
293
+ coins.forEach((coin, ndx) => this.allPlayers[ndx].coins = coin);
294
+ }
295
+ backlogIndex = 1;
296
+ selectBacklog(incr = -1) {
297
+ const parseStateText = document.getElementById('parseStateText');
298
+ const backlog = this.logWriter.backlog;
299
+ const ndx = Math.max(0, Math.min(backlog.length - 1, this.backlogIndex + incr));
300
+ this.backlogIndex = ndx;
301
+ const logElt = backlog[ndx]; // .replace(/,\n$/,'');
302
+ parseStateText.value = logElt;
303
+ }
266
304
  /** enter debugger, with interesting values in local scope */
267
305
  debug() {
268
306
  const table = this.table, player = this.curPlayer;
@@ -276,7 +314,7 @@ export class GamePlay extends GamePlay0 {
276
314
  newTurnNumber() {
277
315
  }
278
316
  readFileState() {
279
- document.getElementById('fsReadFileButton')?.click();
317
+ document.getElementById('fsReadFileButton')?.click(); // --> window.showOpenFilePicker()
280
318
  }
281
319
  // async fileState() {
282
320
  // // Sadly, there is no way to suggest the filename for read?
@@ -290,28 +328,6 @@ export class GamePlay extends GamePlay0 {
290
328
  // console.log(stime(this, `.fileState: logArray =\n`), stateArray);
291
329
  // this.gameSetup.restart(state);
292
330
  // }
293
- backStates = [];
294
- /** setNextPlayer->startTurn (or Key['p']) */
295
- saveState() {
296
- if (this.nstate !== 0) {
297
- this.backStates = this.backStates.slice(this.nstate); // remove ejected states
298
- this.nstate = 0;
299
- }
300
- const state = this.gameSetup.scenarioParser.saveState(this);
301
- this.backStates.unshift(state);
302
- console.log(stime(this, `.saveState -------- #${this.nstate}:${this.backStates.length - 1} turn=${state.turn}`), state);
303
- }
304
- // TODO: setup undo index to go fwd and back? wire into undoCont?
305
- nstate = 0;
306
- /** move nstate to older(back=true, S-P) or newer(back=false, C-P) states in backStates */
307
- pickState(back = true) {
308
- this.nstate = back ? Math.min(this.backStates.length - 1, this.nstate + 1) : Math.max(0, this.nstate - 1);
309
- const state = this.backStates[this.nstate];
310
- console.log(stime(this, `.pickState -------- #${this.nstate}:${this.backStates.length - 1} turn=${state.turn}:`), state);
311
- this.gameSetup.parseScenario(state); // typically sets gamePlay.turnNumber
312
- console.log(stime(this, `.pickState -------- #${this.nstate}:${this.backStates.length - 1} turn=${state.turn}:`), state);
313
- this.setNextPlayer(this.turnNumber);
314
- }
315
331
  clickDone() {
316
332
  this.table.doneClicked({});
317
333
  }
@@ -1 +1 @@
1
- {"version":3,"file":"game-play.js","sourceRoot":"","sources":["../src/game-play.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAe,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,GAAG,EAAuB,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAe,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B;;;;;;GAMG;AACH,MAAM,OAAO,SAAU,SAAQ,KAAK;IACD;IAAmB;IAApD,YAAY,IAAY,EAAS,IAAU,EAAS,GAAQ;QAC1D,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QADO,SAAI,GAAJ,IAAI,CAAM;QAAS,QAAG,GAAH,GAAG,CAAK;IAE5D,CAAC;CACF;AAED,8EAA8E;AAC9E,MAAM,IAAI;IACR,KAAK,GAAW,EAAE,CAAC;IACnB,GAAG,GAAW,CAAC,CAAC;IAChB,KAAK,GAAQ,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,OAAO,SAAS;IAgCD;IA/BnB,8DAA8D;IAC9D,MAAM,CAAC,QAAQ,CAAY;IAC3B,MAAM,CAAC,IAAI,GAAG,CAAC,CAAA;IACN,EAAE,GAAG,SAAS,CAAC,IAAI,EAAE,CAAA;IAErB,SAAS,GAAc,CAAC,IAAI,YAAY,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAgB,CAAC,CAAC,CAAC,CAAC,SAA6B,CAAC;IAC7H,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,IAAY,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChF,SAAS,CAAC,GAAG,IAAW,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3D,UAAU,CAAO;IACjB,EAAE,CAAC,CAAS,IAAI,OAAO,EAAE,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;IAEnC,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;IAEpD,IAAI,UAAU,KAAK,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IAC9C,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE/B,MAAM,CAAc,CAAU,8DAA8D;IAC5F,SAAS,GAA2B,EAAE,CAAA;IAC/C,8EAA8E;IAC9E,oDAAoD;IACpD,yFAAyF;IAEzF,sDAAsD;IACtD,cAAc,CAAC,GAAG,GAAG,OAAO,EAAE,OAA4B,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE;QACnG,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,uCAAuC;QACrE,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,EAAE,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,GAAG,KAAK,KAAK,IAAI,CAAC,CAAA;IACjD,CAAC;IAED,6DAA6D;IAC7D,YAAmB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;QACrC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAC/B,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;QACpC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;IACD,KAAK,CAAQ;IACb,KAAK,CAAQ;IAEb,UAAU,GAAW,CAAC,CAAA,CAAI,8CAA8C;IACxE,YAAY,GAAW,CAAC,CAAA,CAAE,kDAAkD;IAC5E,SAAS,CAAS;IAClB,OAAO,GAAG,IAAI,CAAC;IAEf,UAAU,CAAC,OAAe,IAAI,CAAC,SAAS;QACtC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAED,aAAa,CAAC,CAAwD;QACpE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,4DAA4D;IAC5D,OAAO,CAAC,IAAY,EAAE,IAAI,GAAG,EAAE;QAC7B,IAAI,IAAI,YAAY,QAAQ;YAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,OAAO;QACL,4BAA4B;QAC5B,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;YACtB,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;aAAM;YACL,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;IACH,CAAC;IAED,OAAO;QACL,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,QAAQ,GAAG,CAAC,CAAC,EAAE,MAAc,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAG,CAAC;QAElD,0EAA0E;IAC5E,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,UAAkB,IAAG,CAAC;IAEpC;;;OAGG;IACH,aAAa,CAAC,UAAmB;QAC/B,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAC/B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;SAC9B;QACD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,YAAY,CAAC,MAAc;QACzB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC;IACnC,CAAC;IAED,WAAW;QACT,+CAA+C;QAC/C,MAAM,IAAI,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,CAAG,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kDAAkD;IAClD,WAAW,CAA+E;IAC1F,OAAO,CAAC,GAAQ,EAAE,EAAe,EAAE,IAAW,EAAE,EAAa;QAC3D,OAAO,IAAI,CAAC,WAAW,CAAA,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAA;IAC1E,CAAC;IACD,QAAQ,GAAS,IAAI,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;IACzC,UAAU,CAAC,GAAgB,EAAE,IAAY,EAAE,QAAwB,GAAG,CAAC,IAAI;QACzE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,2DAA2D;IAC3D,cAAc;QACZ,kEAAkE;QAClE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,IAAY,EAAE,KAAa,EAAE,KAAU;QAC9D,MAAM,QAAQ,GAAG,GAAG,IAAI,cAAc,IAAI,MAAM,KAAK,EAAE,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;;;;OAUG;IACH,WAAW,CAAC,IAAU,EAAE,KAAuB,EAAE,OAAiB;QAChE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,yCAAyC;IACjE,CAAC;IAED,2DAA2D;IAC3D,YAAY,CAAC,IAAU,EAAE,KAAuB,EAAE,OAAiB;QACjE,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,KAAK,KAAK,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,KAAK,EAAE,EAAE,sBAAsB,CAAC,CAAA;QAClF,2CAA2C;QAC3C,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,KAAK,KAAK,IAAI,CAAC,UAAU,EAAE;YAC7B,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,SAAS,OAAO,EAAE,KAAK,IAAI,GAAG,EAAE,EAAE,sBAAsB,CAAC,CAAA;YACrF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAI,wCAAwC;SACpE;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,uCAAuC;IACvC,WAAW,CAAC,IAAU;QACpB,IAAI,CAAC,IAAI;YAAE,OAAO,CAAI,0BAA0B;QAChD,IAAI,IAAI,GAAG,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC;QAC1C,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE;YACzB,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE;gBAClC,IAAI,GAAG,UAAU,CAAC,CAAC,OAAO;aAC3B;iBAAM,IAAI,IAAI,CAAC,MAAM,EAAE;aACvB;SACF;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAE,cAAc;IAClC,CAAC;;AAGH;;;;;GAKG;AACH,MAAM,OAAO,QAAS,SAAQ,SAAS;IAC5B,KAAK,CAAO,CAAG,qCAAqC;IAC7D,uEAAuE;IACvE,YAAY,SAAoB,EAAE,QAAkB;QAClD,KAAK,CAAC,SAAS,CAAC,CAAC,CAAY,6BAA6B;QAC1D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,QAAQ;QAC9B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QAC7B,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;YAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC/C,CAAC;IAED,8BAA8B;IAC9B,MAAM;QACJ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACvF,CAAC;IAGD,QAAQ;QACN,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACtB,IAAI,SAAS,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAE,CAAA,CAAA,CAAC,CAAA;QACpE,IAAI,UAAU,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAE,CAAA,CAAA,CAAC,CAAA;QACtE,IAAI,QAAQ,GAAG,GAAG,EAAE;YAClB,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;YAC/C,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC,CAAA;QACD,sEAAsE;QACtE,uEAAuE;QACvE,qEAAqE;QACrE,sFAAsF;QACtF,uFAAuF;QACvF,oHAAoH;QAEpH,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QACzE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QACvE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QACvE,yEAAyE;QACzE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAA,CAAC,SAAS;QAC/E,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA,CAAA,mBAAmB;QAC9F,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QACrE,gGAAgG;QAChG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAA,CAAC,sBAAsB;QAEvF,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;QAC1F,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QACzF,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QAEtF,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;QACpE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;QACpE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;QACpE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9D,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC5D,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAA,CAAA,CAAC,CAAC,CAAC;QAExH,8GAA8G;QAC9G,yFAAyF;QACzF,yFAAyF;QACzF,gHAAgH;QAChH,uEAAuE;QACvE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;QAEnD,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE;YACrC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/E,CAAC,CAAC,CAAC;QAEH,eAAe;QACf,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAA;QACxD,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAA;IAC1D,CAAC;IAED,6DAA6D;IAC7D,KAAK;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC,SAAS,CAAA;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/D,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACvB,QAAQ,CAAC;QACT,OAAO;IACT,CAAC;IAED,uCAAuC;IAC9B,aAAa;IACtB,CAAC;IAED,aAAa;QACX,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,CAAC;IACvD,CAAC;IAED,sBAAsB;IACtB,gEAAgE;IAChE,gGAAgG;IAChG,8EAA8E;IAC9E,0CAA0C;IAC1C,kHAAkH;IAClH,iEAAiE;IACjE,8CAA8C;IAC9C,oCAAoC;IACpC,sEAAsE;IACtE,mCAAmC;IACnC,IAAI;IAEJ,UAAU,GAAoB,EAAE,CAAC;IACjC,6CAA6C;IAC7C,SAAS;QACP,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB;YAC9E,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;SACjB;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,wBAAwB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAC,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IACxH,CAAC;IACD,iEAAiE;IACjE,MAAM,GAAG,CAAC,CAAC;IACX,0FAA0F;IAC1F,SAAS,CAAC,IAAI,GAAG,IAAI;QACnB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1G,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,wBAAwB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAC,CAAC,SAAS,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QACvH,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,qCAAqC;QAC1E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,wBAAwB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAC,CAAC,SAAS,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QACvH,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IAED,SAAS;QACP,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IAC5B,CAAC;IACD,YAAY,CAAC,GAAY;QACvB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAED,UAAU,GAAG,IAAI,CAAA;IAEjB,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,EAAE;QAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAA;QACpB,IAAI,QAAQ,GAAG,CAAE,CAAC,CAAC,OAAmB,CAAC,MAAM,CAAC,QAAQ,CAAA;QACtD,IAAI,QAAQ,EAAE;YACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,MAAM,IAAI,KAAK,aAAa,CAAC,CAAC,CAAA;YACxE,MAAM,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,CAAA;YAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,MAAM,IAAI,KAAK,UAAU,CAAC,CAAC,CAAA;SACtE;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;IACD,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS;QAC1B,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACrD,CAAC;IACD,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS;QAC3B,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACtD,CAAC;IACD,wFAAwF;IACxF,UAAU;QACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACpB,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,wBAAwB,CAAC,CAAA;QACrG,UAAU,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IAC/D,CAAC;IACD,gCAAgC;IAChC,aAAa,CAAC,GAAa,EAAE,EAAQ;QACnC,IAAI,IAAI,CAAC,SAAS,CAAC,cAAc;YAAE,OAAM;QACzC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,IAAc,EAAE,EAAQ,EAAE,IAAI,GAAG,CAAC;QACzC,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,CAAA;QAC3B,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;YAC/F,OAAM;SACP;QACD,IAAI,IAAI,KAAK,SAAS;YAAE,IAAI,GAAG,MAAM,CAAC,OAAO,CAAA;QAC7C,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC,qBAAqB;IACrD,CAAC;IACD,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,GAAG,KAAK;QACtB,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE;YACrB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;IACJ,CAAC;IACD,QAAQ,CAAC,GAAG,GAAG,CAAC;QACd,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA,CAAE,sBAAsB;QAChD,IAAI,IAAI,CAAC,YAAY,IAAI,GAAG;YAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC;IACD,QAAQ,CAAC,GAAG,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;QAC9B,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QAC5B,CAAC,CAAC,OAAO,GAAG,OAAO,CAAA;QACnB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,WAAW,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;IACxE,CAAC;IACD,wCAAwC;IACxC,IAAI,OAAO,CAAC,GAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA,CAAC,CAAC;IACtE,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAA,CAAC,CAAC;IAC5F,QAAQ,GAAG,KAAK,CAAA;IAEhB,iCAAiC;IACjC,QAAQ,CAAC,WAAoB,IAAI;QAC/B,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAA,CAAC,4BAA4B;QACtD,EAAE;QACF,gBAAgB;QAChB,EAAE;QACF,IAAI,CAAC,YAAY,EAAE,CAAA;QACnB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAA;IACtB,CAAC;IACD,gCAAgC;IAChC,QAAQ;QACN,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAA,CAAC,4BAA4B;QACtD,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA,CAAA,qCAAqC;QACjE,IAAI,CAAC,IAAI;YAAE,OAAM;QACjB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChC,IAAI,CAAC,YAAY,EAAE,CAAA;QACnB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAA;IACtB,CAAC;IACD,YAAY,CAAC,MAAmB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG;QACpD,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,2BAA2B;YACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;SAC/E;IACH,CAAC;IAGQ,OAAO;QACd,uEAAuE;QACvE,uGAAuG;QACvG,KAAK,CAAC,OAAO,EAAE,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;QACzC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACtC,MAAM,KAAK,GAAG,GAAG,OAAO,IAAI,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,CAAC;QACxD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,GAAG,CAAA;IACpD,CAAC;IACD;;;;;;;OAOG;IACH,aAAa,CAAC,IAAY,EAAE,SAAmB;QAC7C,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5F,CAAC;QAAE,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAyB,CAAC,KAAK,GAAG,KAAK,CAAC;IACnF,CAAC;IAEQ,aAAa,CAAC,UAAmB;QACxC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACvC,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,sBAAsB;QACvD,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,qCAAqC;QAC5D,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,8DAA8D;QACrF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,wCAAwC;QACrE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAY,gBAAgB;QAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAa,uDAAuD;IACtF,CAAC;IAED,4BAA4B;IAC5B,SAAS;IACT,CAAC;IAED,cAAc;IACd,CAAC;IAED;;;;;;;OAOG;IACH,YAAY,CAAC,GAAQ,EAAE,IAAU;QAC/B,OAAO;IACT,CAAC;IAED;;;;;;;;OAQG;IACH,cAAc,CAAC,GAAc;QAC3B,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA,CAAG,oCAAoC;QACxE,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG;YAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QACnF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QACpC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAA;QACzB,IAAI,CAAC,aAAa,EAAE,CAAA;QACpB,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,uDAAuD,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACvH,CAAC;IAED,oGAAoG;IACpG,eAAe,CAAC,GAAc;QAC5B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAA;QACxB,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
1
+ {"version":3,"file":"game-play.js","sourceRoot":"","sources":["../src/game-play.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAA6B,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,GAAG,EAAuB,MAAM,OAAO,CAAC;AAKjD,OAAO,EAAe,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAY,MAAM,mBAAmB,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,OAAO,SAAU,SAAQ,KAAK;IACD;IAAmB;IAApD,YAAY,IAAY,EAAS,IAAU,EAAS,GAAQ;QAC1D,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QADO,SAAI,GAAJ,IAAI,CAAM;QAAS,QAAG,GAAH,GAAG,CAAK;IAE5D,CAAC;CACF;AAED,8EAA8E;AAC9E,MAAM,IAAI;IACR,KAAK,GAAW,EAAE,CAAC;IACnB,GAAG,GAAW,CAAC,CAAC;IAChB,KAAK,GAAQ,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,OAAO,SAAS;IAkCD;IAhCnB,MAAM,CAAC,IAAI,GAAG,CAAC,CAAA;IACN,EAAE,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,6CAA6C;IAEpE,SAAS,CAAa;IAC/B,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,IAAY,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChF,SAAS,CAAC,GAAG,IAAW,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3D,UAAU,CAAO;IACjB,EAAE,CAAC,CAAS,IAAI,OAAO,EAAE,CAAC,GAAG,GAAG,CAAC,CAAA,CAAC,CAAC;IAEnC,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;IACpD,WAAW,GAAa,EAAE,CAAA;IAC1B,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAC7C,SAAS,GAAW,EAAE,CAAA;IACtB,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACzC,WAAW,GAAa,EAAE,CAAA;IAC1B,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAEpC,MAAM,CAAc,CAAU,8DAA8D;IAC5F,SAAS,GAA2B,EAAE,CAAA;IAC/C,8EAA8E;IAC9E,oDAAoD;IACpD,yFAAyF;IAEzF,sDAAsD;IACtD,cAAc,CAAC,GAAG,GAAG,OAAO,EAAE,OAA4B,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE;QACnG,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,uCAAuC;QACrE,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,EAAE,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,GAAG,KAAK,KAAK,IAAI,CAAC,CAAA;IACjD,CAAC;IAED,6DAA6D;IAC7D,YAAmB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;QACrC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAC/B,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;QACpC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;IACD,KAAK,CAAQ;IACb,KAAK,CAAQ;IAEb,UAAU,GAAW,CAAC,CAAA,CAAI,8CAA8C;IACxE,YAAY,GAAW,CAAC,CAAA,CAAE,kDAAkD;IAC5E,SAAS,CAAS;IAClB,OAAO,GAAG,IAAI,CAAC;IAEf,UAAU,CAAC,OAAe,IAAI,CAAC,SAAS;QACtC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAED,aAAa,CAAC,CAAwD;QACpE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,4DAA4D;IAC5D,OAAO,CAAC,IAAY,EAAE,IAAI,GAAG,EAAE;QAC7B,IAAI,IAAI,YAAY,QAAQ;YAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,OAAO;QACL,4BAA4B;QAC5B,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;YACtB,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;aAAM;YACL,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;IACH,CAAC;IAED,OAAO;QACL,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,QAAQ,GAAG,CAAC,CAAC,EAAE,MAAc,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAG,CAAC;QAElD,0EAA0E;IAC5E,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,UAAkB,IAAG,CAAC;IAEpC;;;OAGG;IACH,aAAa,CAAC,UAAmB;QAC/B,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAC/B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;SAC9B;QACD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAC5D,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,YAAY,CAAC,MAAc;QACzB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC;IACnC,CAAC;IAED,WAAW;QACT,+CAA+C;QAC/C,MAAM,IAAI,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,CAAG,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kDAAkD;IAClD,WAAW,CAA+E;IAC1F,OAAO,CAAC,GAAQ,EAAE,EAAe,EAAE,IAAW,EAAE,EAAa;QAC3D,OAAO,IAAI,CAAC,WAAW,CAAA,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAA;IAC1E,CAAC;IACD,QAAQ,GAAS,IAAI,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;IACzC,UAAU,CAAC,GAAgB,EAAE,IAAY,EAAE,QAAwB,GAAG,CAAC,IAAI;QACzE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,2DAA2D;IAC3D,cAAc;QACZ,gEAAgE;QAChE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,IAAY,EAAE,KAAa,EAAE,KAAU;QAC9D,MAAM,QAAQ,GAAG,GAAG,IAAI,cAAc,IAAI,MAAM,KAAK,EAAE,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;;;;OAUG;IACH,WAAW,CAAC,IAAU,EAAE,KAAuB,EAAE,OAAiB;QAChE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,yCAAyC;IACjE,CAAC;IAED,2DAA2D;IAC3D,YAAY,CAAC,IAAU,EAAE,KAAuB,EAAE,OAAiB;QACjE,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,KAAK,KAAK,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,KAAK,EAAE,EAAE,sBAAsB,CAAC,CAAA;QAClF,2CAA2C;QAC3C,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,KAAK,KAAK,IAAI,CAAC,UAAU,EAAE;YAC7B,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,SAAS,OAAO,EAAE,KAAK,IAAI,GAAG,EAAE,EAAE,sBAAsB,CAAC,CAAA;YACrF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAI,wCAAwC;SACpE;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,uCAAuC;IACvC,WAAW,CAAC,IAAU;QACpB,IAAI,CAAC,IAAI;YAAE,OAAO,CAAI,0BAA0B;QAChD,IAAI,IAAI,GAAG,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC;QAC1C,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE;YACzB,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE;gBAClC,IAAI,GAAG,UAAU,CAAC,CAAC,OAAO;aAC3B;iBAAM,IAAI,IAAI,CAAC,MAAM,EAAE;aACvB;SACF;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAE,cAAc;IAClC,CAAC;;AAGH;;;;;GAKG;AACH,MAAM,OAAO,QAAS,SAAQ,SAAS;IAC5B,KAAK,CAAO,CAAG,qCAAqC;IACpD,SAAS,GAAc,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IACpD,uEAAuE;IACvE,YAAY,SAAoB,EAAE,QAAkB;QAClD,KAAK,CAAC,SAAS,CAAC,CAAC,CAAY,6BAA6B;QAC1D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAQ,yCAAyC;QACtE,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QAC7B,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;YAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC/C,CAAC;IAED,8BAA8B;IAC9B,MAAM;QACJ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACvF,CAAC;IAGD,QAAQ;QACN,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACtB,IAAI,SAAS,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAE,CAAA,CAAA,CAAC,CAAA;QACpE,IAAI,UAAU,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAE,CAAA,CAAA,CAAC,CAAA;QACtE,IAAI,QAAQ,GAAG,GAAG,EAAE;YAClB,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;YAC/C,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC,CAAA;QACD,sEAAsE;QACtE,uEAAuE;QACvE,qEAAqE;QACrE,sFAAsF;QACtF,uFAAuF;QACvF,oHAAoH;QAEpH,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QACzE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QACvE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QACvE,yEAAyE;QACzE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAA,CAAC,SAAS;QAC/E,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA,CAAA,mBAAmB;QAC9F,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QACrE,gGAAgG;QAChG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAA,CAAC,sBAAsB;QAEvF,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;QAC1F,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QACzF,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QAEtF,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;QACpE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;QACpE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;QACpE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9D,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC5D,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAA,CAAA,CAAC,CAAC,CAAC;QACxH,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACzE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;QAC1F,gFAAgF;QAEhF,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;QAEnD,eAAe;QACf,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAA;QACxD,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAA;IAC1D,CAAC;IAED,uEAAuE;IACvE,kBAAkB,CAAC,SAAsB,IAAI,CAAC,MAAM;QAClD,OAAO,IAAI,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IACD,cAAc,CAAiB;IAC/B;;;;OAIG;IACH,aAAa,CAAC,QAAkB;QAC9B,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACvE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,+BAA+B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;QACzE,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IACD,2EAA2E;IAC3E,QAAQ;QACN,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IACD,8CAA8C;IAC9C,SAAS,CAAC,QAAkB;QAC1B,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IACD,qCAAqC;IACrC,UAAU,CAAC,QAAkB;QAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC7B,IAAI,KAAK;YAAE,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED,YAAY,GAAG,CAAC,CAAC;IACjB,aAAa,CAAC,IAAI,GAAG,CAAC,CAAC;QACrB,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC,gBAAgB,CAAqB,CAAC;QACrF,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QACxB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,uBAAuB;QACpD,cAAc,CAAC,KAAK,GAAG,MAAM,CAAC;IAChC,CAAC;IAED,6DAA6D;IAC7D,KAAK;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC,SAAS,CAAA;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/D,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACvB,QAAQ,CAAC;QACT,OAAO;IACT,CAAC;IAED,uCAAuC;IAC9B,aAAa;IACtB,CAAC;IAED,aAAa;QACX,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,kCAAkC;IAC1F,CAAC;IAED,sBAAsB;IACtB,gEAAgE;IAChE,gGAAgG;IAChG,8EAA8E;IAC9E,0CAA0C;IAC1C,kHAAkH;IAClH,iEAAiE;IACjE,8CAA8C;IAC9C,oCAAoC;IACpC,sEAAsE;IACtE,mCAAmC;IACnC,IAAI;IAEJ,SAAS;QACP,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IAC5B,CAAC;IACD,YAAY,CAAC,GAAY;QACvB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAED,UAAU,GAAG,IAAI,CAAA;IAEjB,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,EAAE;QAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAA;QACpB,IAAI,QAAQ,GAAG,CAAE,CAAC,CAAC,OAAmB,CAAC,MAAM,CAAC,QAAQ,CAAA;QACtD,IAAI,QAAQ,EAAE;YACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,MAAM,IAAI,KAAK,aAAa,CAAC,CAAC,CAAA;YACxE,MAAM,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,CAAA;YAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,MAAM,IAAI,KAAK,UAAU,CAAC,CAAC,CAAA;SACtE;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;IACD,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS;QAC1B,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACrD,CAAC;IACD,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS;QAC3B,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACtD,CAAC;IACD,wFAAwF;IACxF,UAAU;QACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACpB,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,wBAAwB,CAAC,CAAA;QACrG,UAAU,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IAC/D,CAAC;IACD,gCAAgC;IAChC,aAAa,CAAC,GAAa,EAAE,EAAQ;QACnC,IAAI,IAAI,CAAC,SAAS,CAAC,cAAc;YAAE,OAAM;QACzC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,IAAc,EAAE,EAAQ,EAAE,IAAI,GAAG,CAAC;QACzC,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,CAAA;QAC3B,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;YAC/F,OAAM;SACP;QACD,IAAI,IAAI,KAAK,SAAS;YAAE,IAAI,GAAG,MAAM,CAAC,OAAO,CAAA;QAC7C,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC,qBAAqB;IACrD,CAAC;IACD,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,GAAG,KAAK;QACtB,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE;YACrB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;IACJ,CAAC;IACD,QAAQ,CAAC,GAAG,GAAG,CAAC;QACd,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA,CAAE,sBAAsB;QAChD,IAAI,IAAI,CAAC,YAAY,IAAI,GAAG;YAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC;IACD,QAAQ,CAAC,GAAG,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI;QAC9B,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QAC5B,CAAC,CAAC,OAAO,GAAG,OAAO,CAAA;QACnB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,WAAW,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;IACxE,CAAC;IACD,wCAAwC;IACxC,IAAI,OAAO,CAAC,GAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA,CAAC,CAAC;IACtE,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAA,CAAC,CAAC;IAC5F,QAAQ,GAAG,KAAK,CAAA;IAEhB,iCAAiC;IACjC,QAAQ,CAAC,WAAoB,IAAI;QAC/B,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAA,CAAC,4BAA4B;QACtD,EAAE;QACF,gBAAgB;QAChB,EAAE;QACF,IAAI,CAAC,YAAY,EAAE,CAAA;QACnB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAA;IACtB,CAAC;IACD,gCAAgC;IAChC,QAAQ;QACN,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAA,CAAC,4BAA4B;QACtD,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA,CAAA,qCAAqC;QACjE,IAAI,CAAC,IAAI;YAAE,OAAM;QACjB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChC,IAAI,CAAC,YAAY,EAAE,CAAA;QACnB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAA;IACtB,CAAC;IACD,YAAY,CAAC,MAAmB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG;QACpD,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,2BAA2B;YACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;SAC/E;IACH,CAAC;IAGQ,OAAO;QACd,uEAAuE;QACvE,uGAAuG;QACvG,KAAK,CAAC,OAAO,EAAE,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;QACzC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACtC,MAAM,KAAK,GAAG,GAAG,OAAO,IAAI,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,CAAC;QACxD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,GAAG,CAAA;IACpD,CAAC;IACD;;;;;;;OAOG;IACH,aAAa,CAAC,IAAY,EAAE,SAAmB;QAC7C,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5F,CAAC;QAAE,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAyB,CAAC,KAAK,GAAG,KAAK,CAAC;IACnF,CAAC;IAEQ,aAAa,CAAC,UAAmB;QACxC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACvC,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,sBAAsB;QACvD,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,qCAAqC;QAC5D,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,8DAA8D;QACrF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,wCAAwC;QACrE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAY,gBAAgB;QAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAa,uDAAuD;IACtF,CAAC;IAED,4BAA4B;IAC5B,SAAS;IACT,CAAC;IAED,cAAc;IACd,CAAC;IAED;;;;;;;OAOG;IACH,YAAY,CAAC,GAAQ,EAAE,IAAU;QAC/B,OAAO;IACT,CAAC;IAED;;;;;;;;OAQG;IACH,cAAc,CAAC,GAAc;QAC3B,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA,CAAG,oCAAoC;QACxE,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG;YAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QACnF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QACpC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAA;QACzB,IAAI,CAAC,aAAa,EAAE,CAAA;QACpB,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,uDAAuD,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACvH,CAAC;IAED,oGAAoG;IACpG,eAAe,CAAC,GAAc;QAC5B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAA;QACxB,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
@@ -1,9 +1,9 @@
1
1
  /// <reference types="easeljs" />
2
2
  import { Constructor } from "@thegraid/common-lib";
3
- import { Stage } from "@thegraid/easeljs-module";
3
+ import { Stage, type DisplayObject } from "@thegraid/easeljs-module";
4
4
  import { GamePlay } from "./game-play";
5
5
  import { Hex, HexMap } from "./hex";
6
- import { ScenarioParser, SetupElt, type StartElt } from "./scenario-parser";
6
+ import { SetupElt, type StartElt } from "./scenario-parser";
7
7
  import { LogWriter } from "./stream-writer";
8
8
  import { Table } from "./table";
9
9
  /** OR: import { Params } from "@angular/router"; */
@@ -27,20 +27,26 @@ export declare class GameSetup {
27
27
  * ngAfterViewInit2() --> start here!
28
28
  *
29
29
  * - this.initialize(canvasId);
30
- * - this.loadImagesThenStartup();
30
+ * - this.loadImagesThenStartup(this.qParams);
31
31
  *
32
32
  * @param canvasId supply undefined for "headless" Stage
33
33
  * @param qParams queryParams from StageComponent --> this.qParams;
34
34
  */
35
- constructor(canvasId: string, qParams?: Params);
35
+ constructor(canvasId?: string, qParams?: Params);
36
36
  static random_seed: string;
37
37
  get seed(): string;
38
38
  init_random(seed?: string): void;
39
- /** one-time, invoked from new GameSetup(canvasId); typically from StageComponent.ngAfterViewInit2() */
40
- initialize(canvasId: string): void;
39
+ /** one-time, invoked from new GameSetup(canvasId);
40
+ * typically from StageComponent.ngAfterViewInit2()
41
+ *
42
+ * override should call super.initialize();
43
+ *
44
+ * @param canvasId a \<canvas> Element OR the DOM ID of a \<canvas> Element (or undefined for no canvas)
45
+ */
46
+ initialize(canvasId?: string): void;
41
47
  /** Label browser page. Typically: nPlayer=n, scenario from file. */
42
48
  get pageLabel(): string;
43
- loadImagesThenStartup(): void;
49
+ loadImagesThenStartup(qParams?: Params): void;
44
50
  makePlayer(ndx: number, gamePlay: GamePlay): void;
45
51
  /** set from qParams['n'] */
46
52
  nPlayers: number;
@@ -48,28 +54,45 @@ export declare class GameSetup {
48
54
  _netState: string;
49
55
  set netState(val: string);
50
56
  get netState(): string;
57
+ /** for network player vs 'ref' */
51
58
  set playerId(val: string);
52
59
  logTime_js: string;
53
60
  /** Generally accessed as: gamePlay.logWriter! */
54
61
  readonly logWriter: LogWriter;
55
62
  makeLogWriter(): LogWriter;
56
63
  restartable: boolean;
57
- /** C-s ==> kill game, start a new one, possibly with new stateInfo
64
+ /**
65
+ * C-s ==> end game & deconstruct; startup a new one with given stateInfo
66
+ * - allPlayers.endGame()
67
+ * - deContainer(this.stage)
68
+ * - zeroAllArrays()
69
+ * - startup(stateInfo as SetupElt)
70
+ * @param stateInfo SetupElt and/or { hexRad: 60, nHexes: 7, mHexes: 1 }
71
+ */
72
+ restart(stateInfo: SetupElt | HexAspect): void;
73
+ /**
74
+ * zero gamePlay.allTile/Meeples/Players/etc for deconstruction.
58
75
  *
59
- * - p.endGame()
60
- * - deContainer()
61
- * - resetState(stateInfo)
62
- * - startup(stateInfo as Scenario)
63
- * @param stateInfo Scenario and/or { hexRad: 60, nHexes: 7, mHexes: 1 }
76
+ * Not essential, this.gamePlay will be dropped/replaced in startup().
64
77
  */
65
- restart(stateInfo: Scenario | HexAspect): void;
78
+ zeroAllArrays(): void;
66
79
  /**
67
- * reset GameState and/or Table/TableParams before startScenario(stateInfo as Scenario)
80
+ * set TableParams from HexAspect of ParamGUI
81
+ *
82
+ * could override to edit any Scenario bits before startup() --> startScenario(scenario)
68
83
  * @param stateInfo (HexAspect mostly?)
69
84
  */
70
85
  resetState(stateInfo: Scenario | HexAspect): void;
71
- /** read & parse State from text element */
86
+ /** read & parse State from text element: parseStateButton.onClick() => blinkThenRestart() */
72
87
  setupToParseState(): void;
88
+ /** blink DisplayObject [this.table.doneButton] until parseStateAndRestart() completes */
89
+ blinkThenRestart(dispObj?: DisplayObject, text?: string): void;
90
+ /**
91
+ *
92
+ * @param stateText [Element('parseStateText').value.replace(/,$/, '')]
93
+ * @param restart [(s) => this.restart(s)] process the Scenario
94
+ */
95
+ parseStateTextAndRestart(stateText?: string, restart?: (setupElt: SetupElt) => void): void;
73
96
  fileReadPromise: Promise<File>;
74
97
  setupToReadFileState(): Promise<void>;
75
98
  /**
@@ -119,26 +142,25 @@ export declare class GameSetup {
119
142
  * see also: gameSetup.resetState() which can cleanup or extend the Scenario.
120
143
  */
121
144
  initialScenario(qParams?: Params): StartElt;
122
- makeGamePlay(scenario: Scenario): GamePlay;
123
- /**
124
- * zero allTiles, allMeeples, allPlayers, etc.
125
- * invoked by startup();
126
- */
127
- zeroAllArrays(): void;
145
+ makeGamePlay(startElt: SetupElt): GamePlay;
128
146
  /**
129
147
  * Make new Table/layout & gamePlay/hexMap & Players.
130
148
  *
131
- * - zeroAllArrays()
149
+ * - resetState(scenario)
150
+ * - initialScenario(this.qParams)
151
+ * -
152
+ *
132
153
  * - getNPlayers()
133
154
  * - makeHexMap()
134
155
  * - makeTable()
135
156
  * - makeGamePlay(scenario)
136
157
  * - startScenario(scenario)
158
+ *
137
159
  * @param scenario [initialScenario(this.qParams), qParams as obtained from URL]
138
160
  */
139
- startup(scenario?: Scenario): void;
161
+ startup(qParams: Params | SetupElt): void;
140
162
  /** the scenario last used by start(scenario) */
141
- scenario: Scenario;
163
+ startupScenario: SetupElt;
142
164
  /**
143
165
  * Given hexMap, table, and gamePlay, setup/layout everything for the game scenario.
144
166
  *
@@ -146,21 +168,12 @@ export declare class GameSetup {
146
168
  * - makeAllPlayers(gamePlay)
147
169
  * - layoutTable(gamePlay)
148
170
  * - gamePlay.turnNumber = -1
149
- * - setPlayerScore()
150
171
  * - parseScenario(scenario) // scenario.turn set on a FULL/SAVED scenario
151
172
  * - forEachPlayer(p.newGame(gamePlay))
152
173
  * - with (restartable = false) table.makeGUIs() QQQQ: keep in GameSetup ?
153
174
  * - table.startGame(scenario)
154
175
  */
155
176
  startScenario(scenario: Scenario): GamePlay;
156
- makeScenarioParser(hexMap: HexMap<Hex>, gamePlay?: GamePlay): ScenarioParser;
157
- scenarioParser: ScenarioParser;
158
- /**
159
- * Place Tiles and Meeples on HexMap, set GameState.
160
- *
161
- * new ScenarioParser(hexMap, gamePlay).parseScenario(scenario);
162
- */
163
- parseScenario(scenario: SetupElt): void;
164
177
  }
165
178
  export {};
166
179
  //# sourceMappingURL=game-setup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"game-setup.d.ts","sourceRoot":"","sources":["../src/game-setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"game-setup.d.ts","sourceRoot":"","sources":["../src/game-setup.ts"],"names":[],"mappings":"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"}