@thegraid/hexlib 1.1.0 → 1.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/dist/game-play.d.ts +8 -15
- package/dist/game-play.d.ts.map +1 -1
- package/dist/game-play.js +9 -16
- package/dist/game-play.js.map +1 -1
- package/dist/game-setup.d.ts +30 -14
- package/dist/game-setup.d.ts.map +1 -1
- package/dist/game-setup.js +43 -21
- package/dist/game-setup.js.map +1 -1
- package/dist/hex-intfs.d.ts +2 -1
- package/dist/hex-intfs.d.ts.map +1 -1
- package/dist/hex-intfs.js +14 -13
- package/dist/hex-intfs.js.map +1 -1
- package/dist/hex.d.ts +49 -25
- package/dist/hex.d.ts.map +1 -1
- package/dist/hex.js +55 -34
- package/dist/hex.js.map +1 -1
- package/dist/meeple.d.ts +10 -8
- package/dist/meeple.d.ts.map +1 -1
- package/dist/meeple.js +12 -20
- package/dist/meeple.js.map +1 -1
- package/dist/plan-proxy.js +4 -4
- package/dist/scenario-parser.d.ts +1 -0
- package/dist/scenario-parser.d.ts.map +1 -1
- package/dist/scenario-parser.js +2 -2
- package/dist/scenario-parser.js.map +1 -1
- package/dist/shapes.js +2 -2
- package/dist/stream-writer.js +3 -3
- package/dist/table-params.d.ts.map +1 -1
- package/dist/table-params.js +1 -1
- package/dist/table-params.js.map +1 -1
- package/dist/table.d.ts +40 -19
- package/dist/table.d.ts.map +1 -1
- package/dist/table.js +43 -26
- package/dist/table.js.map +1 -1
- package/dist/tile.d.ts +61 -16
- package/dist/tile.d.ts.map +1 -1
- package/dist/tile.js +75 -22
- package/dist/tile.js.map +1 -1
- package/package.json +2 -2
package/dist/hex.d.ts
CHANGED
|
@@ -116,7 +116,7 @@ export declare class Hex {
|
|
|
116
116
|
nextHex(dir: HexDir, ns?: number): Hex | undefined;
|
|
117
117
|
/** return last Hex on axis in given direction */
|
|
118
118
|
lastHex(ds: HexDir): Hex;
|
|
119
|
-
/** distance between Hexes: adjacent = 1, based on row, col, sqrt3 */
|
|
119
|
+
/** distance between Hexes: adjacent = 1, based on row, col, unit = 1 / H.sqrt3 */
|
|
120
120
|
radialDist(hex: Hex): number;
|
|
121
121
|
}
|
|
122
122
|
/**
|
|
@@ -143,6 +143,8 @@ export declare class Hex1 extends Hex {
|
|
|
143
143
|
* class LibHex2extendsLocalHex1 extends Hex2Mixin(LocalHex1) { }
|
|
144
144
|
*
|
|
145
145
|
* class LocalHex2 extends LibHex2extendsLocalHex1 { ... }
|
|
146
|
+
*
|
|
147
|
+
* https://www.typescriptlang.org/docs/handbook/mixins.html
|
|
146
148
|
*/
|
|
147
149
|
export declare function Hex2Mixin<TBase extends Constructor<Hex1>>(Base: TBase): {
|
|
148
150
|
new (...args: any[]): {
|
|
@@ -179,11 +181,13 @@ export declare function Hex2Mixin<TBase extends Constructor<Hex1>>(Base: TBase):
|
|
|
179
181
|
setHexColor(color: string, district?: number | undefined): void;
|
|
180
182
|
/** unit distance between Hexes: adjacent = 1; see also: radialDist */
|
|
181
183
|
metricDist(hex: Hex): number;
|
|
182
|
-
/**
|
|
183
|
-
* @param dir0
|
|
184
|
-
* @param dir1
|
|
184
|
+
/** Location of corner between dir0 and dir1; in parent coordinates.
|
|
185
|
+
* @param dir0 a HexDir
|
|
186
|
+
* @param dir1 a HexDir
|
|
187
|
+
* @param point [new Point()] set location-x,y in point and return it.
|
|
188
|
+
* @param rad [this.radius]
|
|
185
189
|
*/
|
|
186
|
-
cornerPoint(dir0: HexDir, dir1: HexDir): Point;
|
|
190
|
+
cornerPoint(dir0: HexDir, dir1: HexDir, point?: Point, rad?: number): Point;
|
|
187
191
|
/** Location of edge point in dir; in parent coordinates.
|
|
188
192
|
* @param dir indicates direction to edge
|
|
189
193
|
* @param rad [1] per-unit distance from center: 0 --> center, 1 --> exactly on edge, 1+ --> outside hex
|
|
@@ -259,7 +263,7 @@ export declare function Hex2Mixin<TBase extends Constructor<Hex1>>(Base: TBase):
|
|
|
259
263
|
nextHex(dir: HexDir, ns?: number): Hex | undefined;
|
|
260
264
|
/** return last Hex on axis in given direction */
|
|
261
265
|
lastHex(ds: HexDir): Hex;
|
|
262
|
-
/** distance between Hexes: adjacent = 1, based on row, col, sqrt3 */
|
|
266
|
+
/** distance between Hexes: adjacent = 1, based on row, col, unit = 1 / H.sqrt3 */
|
|
263
267
|
radialDist(hex: Hex): number;
|
|
264
268
|
};
|
|
265
269
|
} & TBase;
|
|
@@ -298,11 +302,13 @@ declare const Hex2_base: {
|
|
|
298
302
|
setHexColor(color: string, district?: number | undefined): void;
|
|
299
303
|
/** unit distance between Hexes: adjacent = 1; see also: radialDist */
|
|
300
304
|
metricDist(hex: Hex): number;
|
|
301
|
-
/**
|
|
302
|
-
* @param dir0
|
|
303
|
-
* @param dir1
|
|
305
|
+
/** Location of corner between dir0 and dir1; in parent coordinates.
|
|
306
|
+
* @param dir0 a HexDir
|
|
307
|
+
* @param dir1 a HexDir
|
|
308
|
+
* @param point [new Point()] set location-x,y in point and return it.
|
|
309
|
+
* @param rad [this.radius]
|
|
304
310
|
*/
|
|
305
|
-
cornerPoint(dir0: HexDir, dir1: HexDir): Point;
|
|
311
|
+
cornerPoint(dir0: HexDir, dir1: HexDir, point?: Point, rad?: number): Point;
|
|
306
312
|
/** Location of edge point in dir; in parent coordinates.
|
|
307
313
|
* @param dir indicates direction to edge
|
|
308
314
|
* @param rad [1] per-unit distance from center: 0 --> center, 1 --> exactly on edge, 1+ --> outside hex
|
|
@@ -378,7 +384,7 @@ declare const Hex2_base: {
|
|
|
378
384
|
nextHex(dir: HexDir, ns?: number): Hex | undefined;
|
|
379
385
|
/** return last Hex on axis in given direction */
|
|
380
386
|
lastHex(ds: HexDir): Hex;
|
|
381
|
-
/** distance between Hexes: adjacent = 1, based on row, col, sqrt3 */
|
|
387
|
+
/** distance between Hexes: adjacent = 1, based on row, col, unit = 1 / H.sqrt3 */
|
|
382
388
|
radialDist(hex: Hex): number;
|
|
383
389
|
};
|
|
384
390
|
} & typeof Hex1;
|
|
@@ -451,27 +457,34 @@ export interface HexM<T extends Hex> {
|
|
|
451
457
|
showMark(hex?: T): void;
|
|
452
458
|
}
|
|
453
459
|
/**
|
|
454
|
-
*
|
|
455
|
-
*
|
|
460
|
+
* 2-D Array[row][col]: Hex; plus a mapCont of Graphics-Containers for IHex2.
|
|
461
|
+
*
|
|
462
|
+
* hexAry[n]: all the Hex (or IHex2) elements.
|
|
456
463
|
*
|
|
457
|
-
*
|
|
458
|
-
* If mapCont is set, then populate with Hex2
|
|
464
|
+
* district[i]: Hex[]; all the Hex in a given district.
|
|
459
465
|
*
|
|
460
466
|
* (TP.mh X TP.nh) hexes in districts;
|
|
461
467
|
*
|
|
462
|
-
*
|
|
468
|
+
* Use addToMapCont(hexC), to populate with new hexC()
|
|
469
|
+
*
|
|
470
|
+
* mark: a HexMark to visually indicate a selected IHex2.
|
|
463
471
|
*
|
|
464
472
|
*/
|
|
465
473
|
export declare class HexMap<T extends Hex> extends Array<Array<T>> implements HexM<T> {
|
|
466
474
|
hexC: HexConstructor<Hex>;
|
|
467
475
|
Aname: string;
|
|
476
|
+
/** A color for each District: 'rgb(198,198,198)' */
|
|
468
477
|
static readonly distColor: string[];
|
|
469
478
|
/**
|
|
470
|
-
* HexMap: TP.nRows X TP.nCols
|
|
479
|
+
* HexMap: TP.nRows X TP.nCols of Hex [new hexC()]
|
|
480
|
+
*
|
|
481
|
+
* Basic map is non-GUI, addToMapCont(hexC) makes IHex2 elements to enable GUI interaction.
|
|
482
|
+
* Use hexC() to make Hex; mapCont has layers of Containers per HexMap.cNames;
|
|
471
483
|
*
|
|
472
|
-
*
|
|
473
|
-
* @param addToMapCont
|
|
474
|
-
* @param hexC
|
|
484
|
+
* @param radius [TP.hexRad] typically 60
|
|
485
|
+
* @param addToMapCont [false] set true to include addToMapCont(hexC)
|
|
486
|
+
* @param hexC [Hex] HexConstructor\<Hex\> for each element
|
|
487
|
+
* @param Aname ['mainMap'] a name for debugger
|
|
475
488
|
*/
|
|
476
489
|
constructor(radius?: number, addToMapCont?: boolean, hexC?: HexConstructor<Hex>, Aname?: string);
|
|
477
490
|
/** may be obsolete when using IHex2 */
|
|
@@ -537,12 +550,15 @@ export declare class HexMap<T extends Hex> extends Array<Array<T>> implements He
|
|
|
537
550
|
/** link hex to/from each extant neighor */
|
|
538
551
|
link(hex: T, rc?: RC, map?: T[][], nt?: Topo, lf?: (hex: T) => LINKS<T>): void;
|
|
539
552
|
/**
|
|
540
|
-
*
|
|
541
|
-
*
|
|
553
|
+
* Return the Hex under the given x,y coordinates.
|
|
554
|
+
*
|
|
555
|
+
* Conceptually: (legal ? LegalMark : HexCont)?.hex2 as \<T extends IHex2\>;
|
|
556
|
+
*
|
|
557
|
+
* If multiple HexCont at x,y, return the top (last drawn) HexCont.
|
|
542
558
|
* @param x in local coordinates of this HexMap.mapCont
|
|
543
559
|
* @param y
|
|
544
|
-
* @param legal -
|
|
545
|
-
* @returns the
|
|
560
|
+
* @param legal - return ONLY a Hex with LegalMark visible & mouseenabled.
|
|
561
|
+
* @returns the IHex2 of the LegalMark or HexCont at the given point (or undefined if no such HexCont)
|
|
546
562
|
*/
|
|
547
563
|
hexUnderPoint(x: number, y: number, legal?: boolean): T | undefined;
|
|
548
564
|
private _nh;
|
|
@@ -566,7 +582,10 @@ export declare class HexMap<T extends Hex> extends Array<Array<T>> implements He
|
|
|
566
582
|
/**
|
|
567
583
|
* overridable action for makeAllDistricts;
|
|
568
584
|
*
|
|
569
|
-
* Base implementation invokes
|
|
585
|
+
* Base implementation invokes makeMetaHexRings(nh, mh, rc0)
|
|
586
|
+
*
|
|
587
|
+
* Alterative: makeRect(nrow, ncol, ...)
|
|
588
|
+
*
|
|
570
589
|
* @param nh
|
|
571
590
|
* @param mh
|
|
572
591
|
* @param rc0
|
|
@@ -575,6 +594,11 @@ export declare class HexMap<T extends Hex> extends Array<Array<T>> implements He
|
|
|
575
594
|
makeAllHexes(nh: number | undefined, mh: number | undefined, rc0: RC): T[];
|
|
576
595
|
/**
|
|
577
596
|
* Make the center district, then make (mh-1) rings other meta-hex districts.
|
|
597
|
+
*
|
|
598
|
+
* Spiral clockwise from center, placing a line of meta-hex [using makeMetaHex()].
|
|
599
|
+
*
|
|
600
|
+
* MakeMetaHex likewise spirals from center, placing a line of Hex.
|
|
601
|
+
*
|
|
578
602
|
* @param nh order [number of 'rings'] of meta-hexes (2 or 3 for this game) [TP.mHexes]
|
|
579
603
|
* @param mh size ['rings' in each meta-hex] of meta-hex (1..6) [TP.nHexes]
|
|
580
604
|
* @param rc0 location of initial, central Hex
|
package/dist/hex.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hex.d.ts","sourceRoot":"","sources":["../src/hex.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAC1C,OAAO,EAAiB,WAAW,EAAK,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAEjF,OAAO,EAAE,KAAK,EAAK,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE5C,eAAO,MAAM,QAAQ,eAAe,CAAA;AACpC,eAAO,MAAM,MAAM,cAAc,CAAA;AACjC,oFAAoF;AACpF,MAAM,MAAM,KAAK,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/D,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,GAAG,IAAI,KAAK,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,CAAC,CAAC;AAG/G,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI;KAAG,GAAG,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC;CAAE,CAAA;AAE1D,KAAK,GAAG,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;AACtC,KAAK,MAAM,GAAG;KAAG,GAAG,IAAI,KAAK,GAAG,GAAG;CAAE,CAAA;AACrC,KAAK,MAAM,GAAG;KAAG,GAAG,IAAI,KAAK,GAAG,GAAG;CAAE,CAAA;AACrC,KAAK,IAAI,GAAG,MAAM,GAAG,MAAM,CAAA;AAE3B,qFAAqF;AACrF,qBAAa,OAAQ,SAAQ,SAAS;IACjB,IAAI,EAAE,KAAK;gBAAX,IAAI,EAAE,KAAK;CAG/B;AAGD;;;GAGG;AACH,qBAAa,GAAG;IACd,6EAA6E;IAC7E,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,KAAK;IAEtC,yCAAyC;IACzC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;IAQ/C,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;gBAGzB,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,SAAsB;IAOhF;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,SAAY,EAAE,MAAM,UAAe,EAAE,GAAG,SAAW,EAAE,GAAG,SAAW;;;;;;;;IAiB9E,IAAI,KAAK;;;;;;;MAAmC;IAK5C,KAAK,EAAE,MAAM,CAAC;IAEd,iEAAiE;IACjE,IAAI,IAAI,IAAI,KAAK,CAA+D;IAChF,gCAAgC;IAChC,IAAI,GAAG,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"hex.d.ts","sourceRoot":"","sources":["../src/hex.ts"],"names":[],"mappings":"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"}
|
package/dist/hex.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { C, CenterText, F } from "@thegraid/easeljs-lib";
|
|
2
2
|
import { Container, Point } from "@thegraid/easeljs-module";
|
|
3
|
+
import { NamedContainer } from "./game-play";
|
|
3
4
|
import { H } from "./hex-intfs";
|
|
4
5
|
import { HexShape, LegalMark } from "./shapes";
|
|
5
6
|
import { TP } from "./table-params";
|
|
@@ -155,7 +156,7 @@ export class Hex {
|
|
|
155
156
|
}
|
|
156
157
|
return hex;
|
|
157
158
|
}
|
|
158
|
-
/** distance between Hexes: adjacent = 1, based on row, col, sqrt3 */
|
|
159
|
+
/** distance between Hexes: adjacent = 1, based on row, col, unit = 1 / H.sqrt3 */
|
|
159
160
|
radialDist(hex) {
|
|
160
161
|
let unit = 1 / H.sqrt3; // so w = delta(col) = 1
|
|
161
162
|
let { x: tx, y: ty } = this.xywh(unit), { x: hx, y: hy } = hex.xywh(unit);
|
|
@@ -192,6 +193,8 @@ export class Hex1 extends Hex {
|
|
|
192
193
|
* class LibHex2extendsLocalHex1 extends Hex2Mixin(LocalHex1) { }
|
|
193
194
|
*
|
|
194
195
|
* class LocalHex2 extends LibHex2extendsLocalHex1 { ... }
|
|
196
|
+
*
|
|
197
|
+
* https://www.typescriptlang.org/docs/handbook/mixins.html
|
|
195
198
|
*/
|
|
196
199
|
export function Hex2Mixin(Base) {
|
|
197
200
|
return class Hex2Impl extends Base {
|
|
@@ -324,18 +327,21 @@ export function Hex2Mixin(Base) {
|
|
|
324
327
|
let dx = tx - hx, dy = ty - hy;
|
|
325
328
|
return Math.sqrt(dx * dx + dy * dy); // tw == H.sqrt3
|
|
326
329
|
}
|
|
327
|
-
/**
|
|
328
|
-
* @param dir0
|
|
329
|
-
* @param dir1
|
|
330
|
+
/** Location of corner between dir0 and dir1; in parent coordinates.
|
|
331
|
+
* @param dir0 a HexDir
|
|
332
|
+
* @param dir1 a HexDir
|
|
333
|
+
* @param point [new Point()] set location-x,y in point and return it.
|
|
334
|
+
* @param rad [this.radius]
|
|
330
335
|
*/
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
let a2 = (d0 + d1) / 2, h = this.radius;
|
|
336
|
+
cornerPoint(dir0, dir1, point = new Point(), rad = this.radius) {
|
|
337
|
+
const d0 = H.dirRot[dir0], d1 = H.dirRot[dir1];
|
|
338
|
+
let a2 = (d0 + d1) / 2;
|
|
335
339
|
if (Math.abs(d0 - d1) > 180)
|
|
336
340
|
a2 += 180;
|
|
337
|
-
|
|
338
|
-
|
|
341
|
+
const a = a2 * H.degToRadians;
|
|
342
|
+
point.x = this.x + Math.sin(a) * rad;
|
|
343
|
+
point.y = this.y - Math.cos(a) * rad;
|
|
344
|
+
return point;
|
|
339
345
|
}
|
|
340
346
|
/** Location of edge point in dir; in parent coordinates.
|
|
341
347
|
* @param dir indicates direction to edge
|
|
@@ -343,9 +349,9 @@ export function Hex2Mixin(Base) {
|
|
|
343
349
|
* @param point [new Point()] set location-x,y in point and return it.
|
|
344
350
|
*/
|
|
345
351
|
edgePoint(dir, rad = 1, point = new Point()) {
|
|
346
|
-
const a = H.
|
|
347
|
-
point.x = this.
|
|
348
|
-
point.y = this.
|
|
352
|
+
const a = H.dirRot[dir] * H.degToRadians, h = rad * this.radius * H.sqrt3_2;
|
|
353
|
+
point.x = this.x + Math.sin(a) * h;
|
|
354
|
+
point.y = this.y - Math.cos(a) * h;
|
|
349
355
|
return point;
|
|
350
356
|
}
|
|
351
357
|
};
|
|
@@ -372,7 +378,7 @@ export class HexMark extends HexShape {
|
|
|
372
378
|
this.graphics.f(cm).dp(0, 0, this.radius, 6, 0, this.tilt);
|
|
373
379
|
this.cache(-radius, -radius, 2 * radius, 2 * radius);
|
|
374
380
|
this.graphics.c().f(C.BLACK).dc(0, 0, radius0);
|
|
375
|
-
this.updateCache(
|
|
381
|
+
this.updateCache('destination-out');
|
|
376
382
|
this.setHexBounds(); // bounds are based on readonly, should be const
|
|
377
383
|
this.mouseEnabled = false;
|
|
378
384
|
}
|
|
@@ -431,8 +437,7 @@ export class MapCont extends Container {
|
|
|
431
437
|
this._cNames = cNames.concat();
|
|
432
438
|
this.removeAllChildren();
|
|
433
439
|
this.cNames.forEach(cname => {
|
|
434
|
-
const cont = new
|
|
435
|
-
cont.Aname = cont.name = cname;
|
|
440
|
+
const cont = new NamedContainer(cname);
|
|
436
441
|
this[cname] = cont;
|
|
437
442
|
this.addChild(cont);
|
|
438
443
|
});
|
|
@@ -457,28 +462,34 @@ export class MapCont extends Container {
|
|
|
457
462
|
}
|
|
458
463
|
}
|
|
459
464
|
/**
|
|
460
|
-
*
|
|
461
|
-
*
|
|
465
|
+
* 2-D Array[row][col]: Hex; plus a mapCont of Graphics-Containers for IHex2.
|
|
466
|
+
*
|
|
467
|
+
* hexAry[n]: all the Hex (or IHex2) elements.
|
|
462
468
|
*
|
|
463
|
-
*
|
|
464
|
-
* If mapCont is set, then populate with Hex2
|
|
469
|
+
* district[i]: Hex[]; all the Hex in a given district.
|
|
465
470
|
*
|
|
466
471
|
* (TP.mh X TP.nh) hexes in districts;
|
|
467
472
|
*
|
|
468
|
-
*
|
|
473
|
+
* Use addToMapCont(hexC), to populate with new hexC()
|
|
474
|
+
*
|
|
475
|
+
* mark: a HexMark to visually indicate a selected IHex2.
|
|
469
476
|
*
|
|
470
477
|
*/
|
|
471
478
|
export class HexMap extends Array {
|
|
472
479
|
hexC;
|
|
473
480
|
Aname;
|
|
474
|
-
|
|
475
|
-
static distColor = ['lightgrey',
|
|
481
|
+
/** A color for each District: 'rgb(198,198,198)' */
|
|
482
|
+
static distColor = ['lightgrey', 'limegreen', 'deepskyblue', 'rgb(255,165,0)', 'violet', 'rgb(250,80,80)', 'yellow'];
|
|
476
483
|
/**
|
|
477
|
-
* HexMap: TP.nRows X TP.nCols
|
|
484
|
+
* HexMap: TP.nRows X TP.nCols of Hex [new hexC()]
|
|
485
|
+
*
|
|
486
|
+
* Basic map is non-GUI, addToMapCont(hexC) makes IHex2 elements to enable GUI interaction.
|
|
487
|
+
* Use hexC() to make Hex; mapCont has layers of Containers per HexMap.cNames;
|
|
478
488
|
*
|
|
479
|
-
*
|
|
480
|
-
* @param addToMapCont
|
|
481
|
-
* @param hexC
|
|
489
|
+
* @param radius [TP.hexRad] typically 60
|
|
490
|
+
* @param addToMapCont [false] set true to include addToMapCont(hexC)
|
|
491
|
+
* @param hexC [Hex] HexConstructor\<Hex\> for each element
|
|
492
|
+
* @param Aname ['mainMap'] a name for debugger
|
|
482
493
|
*/
|
|
483
494
|
constructor(radius = TP.hexRad, addToMapCont = false, hexC = Hex, Aname = 'mainMap') {
|
|
484
495
|
super(); // Array<Array<Hex>>()
|
|
@@ -664,16 +675,19 @@ export class HexMap extends Array {
|
|
|
664
675
|
});
|
|
665
676
|
}
|
|
666
677
|
/**
|
|
667
|
-
*
|
|
668
|
-
*
|
|
678
|
+
* Return the Hex under the given x,y coordinates.
|
|
679
|
+
*
|
|
680
|
+
* Conceptually: (legal ? LegalMark : HexCont)?.hex2 as \<T extends IHex2\>;
|
|
681
|
+
*
|
|
682
|
+
* If multiple HexCont at x,y, return the top (last drawn) HexCont.
|
|
669
683
|
* @param x in local coordinates of this HexMap.mapCont
|
|
670
684
|
* @param y
|
|
671
|
-
* @param legal -
|
|
672
|
-
* @returns the
|
|
685
|
+
* @param legal - return ONLY a Hex with LegalMark visible & mouseenabled.
|
|
686
|
+
* @returns the IHex2 of the LegalMark or HexCont at the given point (or undefined if no such HexCont)
|
|
673
687
|
*/
|
|
674
688
|
hexUnderPoint(x, y, legal = true) {
|
|
675
689
|
const mark = this.mapCont.markCont.getObjectUnderPoint(x, y, 1);
|
|
676
|
-
// Note: in theory, mark could be on a
|
|
690
|
+
// Note: in theory, mark could be on a IHex2 that is NOT in hexCont!
|
|
677
691
|
if (mark instanceof LegalMark)
|
|
678
692
|
return mark.hex2;
|
|
679
693
|
if (legal)
|
|
@@ -712,13 +726,15 @@ export class HexMap extends Array {
|
|
|
712
726
|
this.setSize(nh, mh);
|
|
713
727
|
const rc0 = this.calculateRC0();
|
|
714
728
|
const hexAry = this.hexAry = this.makeAllHexes(nh, mh, rc0); // nh hexes on outer ring; single meta-hex
|
|
715
|
-
this.mapCont.hexCont && this.mapCont.centerContainers();
|
|
716
729
|
return hexAry;
|
|
717
730
|
}
|
|
718
731
|
/**
|
|
719
732
|
* overridable action for makeAllDistricts;
|
|
720
733
|
*
|
|
721
|
-
* Base implementation invokes
|
|
734
|
+
* Base implementation invokes makeMetaHexRings(nh, mh, rc0)
|
|
735
|
+
*
|
|
736
|
+
* Alterative: makeRect(nrow, ncol, ...)
|
|
737
|
+
*
|
|
722
738
|
* @param nh
|
|
723
739
|
* @param mh
|
|
724
740
|
* @param rc0
|
|
@@ -729,6 +745,11 @@ export class HexMap extends Array {
|
|
|
729
745
|
}
|
|
730
746
|
/**
|
|
731
747
|
* Make the center district, then make (mh-1) rings other meta-hex districts.
|
|
748
|
+
*
|
|
749
|
+
* Spiral clockwise from center, placing a line of meta-hex [using makeMetaHex()].
|
|
750
|
+
*
|
|
751
|
+
* MakeMetaHex likewise spirals from center, placing a line of Hex.
|
|
752
|
+
*
|
|
732
753
|
* @param nh order [number of 'rings'] of meta-hexes (2 or 3 for this game) [TP.mHexes]
|
|
733
754
|
* @param mh size ['rings' in each meta-hex] of meta-hex (1..6) [TP.nHexes]
|
|
734
755
|
* @param rc0 location of initial, central Hex
|
package/dist/hex.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hex.js","sourceRoot":"","sources":["../src/hex.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hex.js","sourceRoot":"","sources":["../src/hex.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,UAAU,EAAe,CAAC,EAAM,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAiB,KAAK,EAAQ,MAAM,0BAA0B,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAS,CAAC,EAAiB,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AAGpC,MAAM,CAAC,MAAM,QAAQ,GAAG,YAAY,CAAA;AACpC,MAAM,CAAC,MAAM,MAAM,GAAG,WAAW,CAAA;AAcjC,qFAAqF;AACrF,MAAM,OAAO,OAAQ,SAAQ,SAAS;IACjB;IAAnB,YAAmB,IAAW;QAC5B,KAAK,EAAE,CAAA;QADU,SAAI,GAAJ,IAAI,CAAO;IAE9B,CAAC;CACF;AACD,SAAS,EAAE,CAAC,CAAS,IAAI,OAAO,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAEvG;;;GAGG;AACH,MAAM,OAAO,GAAG;IACd,6EAA6E;IAC7E,MAAM,CAAC,OAAO,CAAC,GAAQ,IAAkB,OAAQ,GAAW,CAAC,eAA0B,CAAC,CAAC,CAAC;IAE1F,yCAAyC;IACzC,MAAM,CAAC,KAAK,CAAC,IAAW,EAAE,QAAqB;QAC7C,IAAI;YACF,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;SACpC;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA,CAAC,oCAAoC;YAC3F,MAAM,GAAG,CAAA;SACV;IACH,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,GAAW,EAAE,GAAW;QACnC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC3E,CAAC;IACD,YAAY,GAAc,EAAE,GAAW,EAAE,GAAW,EAAE,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC;QAC9E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QACjB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;IACjB,CAAC;IACD;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG;QAC5E,IAAI,MAAM,EAAE,EAAE,4CAA4C;YACxD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAE,2CAA2C;YACxF,MAAM,IAAI,GAAG,CAAC,CAAC;YACf,MAAM,IAAI,GAAG,GAAG,GAAG,MAAM,CAAC;YAC1B,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;YAC3D,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAG,oBAAoB;YAC9C,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;SAClC;aAAM,EAAE,2CAA2C;YAClD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,CAAA,CAAC,iBAAiB;YAC5D,MAAM,IAAI,GAAG,GAAG,GAAG,MAAM,CAAC;YAC1B,MAAM,IAAI,GAAG,CAAC,CAAC;YACf,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YACvB,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;YAC3D,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;SAClC;IACH,CAAC;IACD,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,gCAAgC;IAE7E,kBAAkB;IAClB,sCAAsC;IACtC,6DAA6D;IAC7D,KAAK,CAAS;IAEd,iEAAiE;IACjE,IAAI,IAAI,KAAY,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAA,CAAC,CAAC;IAChF,gCAAgC;IAChC,IAAI,GAAG,KAAa,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC;IAC5G,IAAI,KAAK,KAAK,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC;IACvD,IAAI,KAAK,KAAK,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC,CAAC,mCAAmC;IAC3F,gCAAgC;IAChC,IAAI,IAAI,KAAa,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC;IACnH,kEAAkE;IAClE,IAAI,SAAS,KAAa,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA,CAAC,CAAC;IAC7G,SAAS,GAAY,SAAS,CAAC;IAC/B,2CAA2C;IAC3C,SAAS,CAAoB,CAAC,cAAc;IAC5C,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,SAAS,CAAA,CAAC,CAAC;IACxC,IAAI,QAAQ,CAAC,CAAqB;QAChC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,mDAAmD;IAEzG,QAAQ,CAAU;IAClB,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvC,IAAI,OAAO,CAAC,CAAU,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;IAE9C,uDAAuD;IAC9C,GAAG,CAAY,CAAE,iEAAiE;IAClF,GAAG,CAAS;IACZ,GAAG,CAAS;IACrB,uEAAuE;IAC9D,KAAK,GAAgB,EAAE,CAAA;IAChC,SAAS,CAAc,CAAK,+CAA+C;IAE3E,IAAI,QAAQ,KAAK,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAa,CAAC,CAAC,CAAC;IAE9D,2BAA2B;IAC3B,QAAQ;QACN,OAAO,OAAO,IAAI,CAAC,GAAG,EAAE,CAAA,CAAC,oDAAoD;IAC/E,CAAC;IACD,oEAAoE;IACpE,UAAU;QACR,OAAO,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;IAC3B,CAAC;IAED,2CAA2C;IAC3C,IAAI,SAAS;QACX,OAAQ,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAc,CAAC,GAAG,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IACpF,CAAC;IACD,cAAc,CAAC,IAA2E,EAAE,UAAU,GAAG,KAAK;QAC5G,IAAI,UAAU;YAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC3E,CAAC;IACD,sEAAsE;IACtE,WAAW,CAAC,IAAiE;QAC3E,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,kDAAkD;IAClD,SAAS,CAAC,GAAW,EAAE,IAAmD;QACxE,IAAI,GAAG,GAAoB,IAAI,CAAC;QAChC,GAAG;YACD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;gBAAE,OAAO,GAAG,CAAC;SACtC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE;QACrC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,2CAA2C;IAC3C,UAAU,CAAC,GAAW,EAAE,KAAa,EAAE;QACrC,IAAI,GAAG,GAAqB,IAAI,CAAC;QACjC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,qDAAqD;IACrD,aAAa,CAAC,IAAqD;QACjE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACrH,CAAC;IAED,iDAAiD;IACjD,OAAO,CAAC,GAAW,EAAE,KAAa,CAAC;QACjC,IAAI,GAAG,GAAoB,IAAI,CAAC;QAChC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG;QAChD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,iDAAiD;IACjD,OAAO,CAAC,EAAU;QAChB,IAAI,GAAG,GAAQ,IAAI,EAAE,IAAqB,CAAC;QAC3C,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE;YAAE,GAAG,GAAG,IAAI,CAAA;SAAE;QAC/C,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,kFAAkF;IAClF,UAAU,CAAC,GAAQ;QACjB,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAA,CAAC,wBAAwB;QAC/C,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACtC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,IAAK,SAAQ,GAAG;IAE3B,KAAK,CAAsB;IAC3B,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACjC,IAAI,IAAI,CAAC,IAAsB,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,oBAAoB;IAC5E,0DAA0D;IAE1D,KAAK,CAAqB;IAC1B,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACjC,IAAI,IAAI,CAAC,IAAwB,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA,CAAC,CAAC;IAExD,IAAI,QAAQ,KAAyD,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAE5I,mEAAmE;IAC1D,QAAQ,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,OAAO;QAC1E,OAAO,GAAG,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA,CAAC,0DAA0D;IAC1F,CAAC;IACD,kCAAkC;IACzB,UAAU,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,OAAO;QAC5E,OAAO,GAAG,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE,CAAA;IAChC,CAAC;CACF;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS,CAAkC,IAAW;IACpE,OAAO,MAAM,QAAS,SAAQ,IAAI;QAChC;;;;;;;YAOI;QACJ,YAAY,GAAG,IAAW;YACxB,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC;YACnC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAE,+CAA+C;YAC5E,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YAC1C,OAAO,CAAS,kBAAkB;QACpC,CAAC;QAED,eAAe,GAAG,IAAI,CAAC;QACvB,yFAAyF;QAChF,IAAI,GAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,yCAAyC;QAC5E,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,CAAgB,4BAA4B;QAC/D,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,CAAI,sCAAsC;QAClF,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1C,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEhD,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,CAAC,CAAC;QAC9B,IAAI,CAAC,CAAC,CAAS,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,CAAC,CAAC;QAC9B,IAAI,CAAC,CAAC,CAAS,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC;QACpC,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA,CAAC,CAAC;QACxC,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA,CAAC,CAAC;QAExC,2CAA2C;QAC3C,IAAa,QAAQ,KAAK,OAAO,IAAI,CAAC,SAAS,CAAA,CAAC,CAAC;QACjD,IAAa,QAAQ,CAAC,CAAqB;YACzC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAA,CAAI,yDAAyD;YAC/E,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAA;QAC7B,CAAC;QACD,SAAS,CAAQ,CAAC,6CAA6C;QAC/D,QAAQ,CAAM,CAAI,qBAAqB;QACvC,MAAM,CAAM,CAAM,qBAAqB;QAEvC,OAAO,CAAC,IAAU,EAAE,IAAI,GAAG,KAAK;YAC9B,MAAM,IAAI,GAAc,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;YACtE,IAAI,CAAC,GAAG,IAAI,CAAC,CAAK,oBAAoB;YACtC,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAChD,IAAI,IAAI,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC,WAAW,KAAK,YAAY,CAAC,EAAE;gBACtG,IAAI,IAAI,KAAK,SAAS,CAAC,MAAM,EAAE,GAAG,IAAI,IAAI,KAAK,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;oBAC/D,2EAA2E;oBAC3E,sDAAsD;oBACtD,oEAAoE;oBACpE,wDAAwD;oBACxD,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,SAAiB,CAAC,CAAC,CAAC,8CAA8C;iBAC9F;qBAAM,IAAI,CAAC;oBAAE,QAAQ,CAAC;aACxB;YACD,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,IAAc,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,sBAAsB;YAClF,IAAI,IAAI,KAAK,SAAS,EAAE;gBACtB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAM,0BAA0B;gBACpD,0CAA0C;gBAC1C,IAAI,IAAI,KAAK,IAAI,CAAC,MAAM,EAAE,GAAG;oBAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;aAC5D;QACH,CAAC;QAED,IAAa,IAAI,KAAK,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,IAAa,IAAI,CAAC,IAAsB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAY,EAAE,KAAK,CAAC,CAAA,CAAC,CAAC;QAE/E,IAAa,IAAI,KAAK,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,IAAa,IAAI,CAAC,IAAwB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAY,EAAE,IAAI,CAAC,CAAA,CAAC,CAAC;QAEhF,eAAe,CAAC,GAAgB,EAAE,GAAW,EAAE,GAAW,EAAE,IAAa;YACvE,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACxB,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;YAChC,MAAM,EAAE,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC/F,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC;YAC9D,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;YACvE,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,cAAc;YAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAExB,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC;YAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACpD,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,GAAG,CAAC,CAAG,eAAe;YACzC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB;QACxC,CAAC;QAED,0CAA0C;QAC1C,QAAQ,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO;YACjC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC;YAClD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1B,CAAC;QAEQ,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;QACrC,IAAa,OAAO,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAChD,IAAa,OAAO,CAAC,CAAU;YAC7B,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;YAClB,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC;QAC7B,CAAC;QAED,iDAAiD;QACjD,QAAQ,CAAC,GAAW,EAAE,GAAW;YAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,qCAAqC;YAC5G,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACX,2BAA2B;YAC3B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;YACxC,oCAAoC;QACtC,CAAC;QAED,YAAY,CAAC,QAA+B,QAAQ;YAClD,MAAM,EAAE,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YACvB,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED;;;WAGG;QACH,WAAW,CAAC,KAAa,EAAE,QAA6B;YACtD,IAAI,QAAQ,KAAK,SAAS;gBAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA,CAAC,kCAAkC;YACvF,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1B,CAAC;QAED,uDAAuD;QACvD,sEAAsE;QACtE,UAAU,CAAC,GAAQ;YACjB,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACnE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;YAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,gBAAgB;QACvD,CAAC;QACD;;;;;WAKG;QACH,WAAW,CAAC,IAAY,EAAE,IAAY,EAAE,KAAK,GAAG,IAAI,KAAK,EAAE,EAAE,GAAG,GAAG,IAAI,CAAC,MAAM;YAC5E,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG;gBAAE,EAAE,IAAI,GAAG,CAAA;YACtC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,YAAY,CAAA;YAC7B,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YACrC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YACrC,OAAO,KAAK,CAAC;QACf,CAAC;QACD;;;;WAIG;QACH,SAAS,CAAC,GAAW,EAAE,GAAG,GAAG,CAAC,EAAE,QAAY,IAAI,KAAK,EAAE;YACrD,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC;YAC5E,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACnC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACnC,OAAO,KAAc,CAAC;QACxB,CAAC;KACF,CAAA;AACH,CAAC;AAED,wDAAwD;AACxD,MAAM,OAAO,IAAK,SAAQ,SAAS,CAAC,IAAI,CAAC;CAAI;AAM7C,qDAAqD;AACrD,MAAM,OAAO,UAAW,SAAQ,IAAI;CAAI,CAAC,aAAa;AAEtD;;;;;;;;GAQG;AACH,MAAM,OAAO,OAAQ,SAAQ,QAAQ;IACnC,GAAG,CAAS;IACZ,YAAY,MAAc,EAAE,OAAO,GAAG,CAAC,EAAE,EAAE,GAAG,sBAAsB;QAClE,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,CAAA;QACpD,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAA;QACnC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAM,gDAAgD;QAC1E,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC5B,CAAC;IAED,2CAA2C;IAC3C;;;;OAIG;IACH,MAAM,CAAC,GAAsB;QAC3B,8EAA8E;QAC9E,4EAA4E;QAC5E,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG;YAAE,OAAO;QAC7B,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,CAAC;QACrC,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,QAAQ,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACxB,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;SAChB;QACD,IAAI,GAAG,EAAE;YACP,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO;gBAAE,QAAQ,CAAC;YAChC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;SACf;QACD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,8BAA8B;IAC/C,CAAC;CACF;AAGD,iEAAiE;AACjE,MAAM,OAAO,OAAQ,SAAQ,SAAS;IACpC;QACE,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;IACxB,CAAC;IAED,6DAA6D;IAC7D,MAAM,CAAC,MAAM,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,CAAU,CAAC;IACxF,wEAAwE;IAChE,OAAO,GAAa,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACpD,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACrC,QAAQ,CAAW,CAAI,eAAe;IACtC,OAAO,CAAW,CAAK,gEAAgE;IACvF,8DAA8D;IAC9D,QAAQ,CAAW,CAAI,kCAAkC;IACzD,QAAQ,CAAW,CAAI,gCAAgC;IACvD,0CAA0C;IAC1C,WAAW,CAAW,CAAC,2BAA2B;IAClD,sEAAsE;IAEtE,2DAA2D;IAC3D,aAAa,CAAC,SAA4B,IAAI,CAAC,MAAM;QACnD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC1B,MAAM,IAAI,GAAG,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;YACvC,IAAI,CAAC,KAAiB,CAAC,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,gBAAgB,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;QAChD,oEAAoE;QACpE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QACvC,MAAM,EAAE,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAiB,CAAC,CAAC;YACrC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAA;QAC5B,CAAC,CAAC,CAAA;IACJ,CAAC;;AAiBH;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,MAAsB,SAAQ,KAAe;IAgB/C;IACA;IAhBT,oDAAoD;IACpD,MAAM,CAAU,SAAS,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAE9H;;;;;;;;;;OAUG;IACH,YAAY,SAAiB,EAAE,CAAC,MAAM,EAAE,YAAY,GAAG,KAAK,EACnD,OAA4B,GAAG,EAC/B,QAAgB,SAAS;QAEhC,KAAK,EAAE,CAAC,CAAC,sBAAsB;QAHxB,SAAI,GAAJ,IAAI,CAA2B;QAC/B,UAAK,GAAL,KAAK,CAAoB;QAGhC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,YAAY;YAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAsB,CAAC,CAAC;IACnE,CAAC;IAED,uCAAuC;IACvC,IAAI,UAAU,KAAK,OAAO,IAA4B,CAAA,CAAC,CAAC;IACxD,4DAA4D;IACnD,QAAQ,GAAe,EAAE,CAAA;IAClC,MAAM,CAAM,CAAE,4BAA4B;IACjC,OAAO,GAAY,IAAI,OAAO,EAAE,CAAC,CAAG,qBAAqB;IAElE,EAAE;IACF,4FAA4F;IAC5F,qGAAqG;IACrG,4FAA4F;IAC5F,4FAA4F;IAC5F,4FAA4F;IAC5F,4EAA4E;IAC5E,EAAE;IAEO,MAAM,GAAG,EAAE,CAAC,MAAM,CAAA;IAC3B,iDAAiD;IACjD,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE/C,MAAM,GAAY,SAAS,CAAA,CAAe,mDAAmD;IAC7F,MAAM,GAAY,SAAS,CAAA,CAAe,mBAAmB;IAC7D,MAAM,GAAY,SAAS,CAAA,CAAe,oBAAoB;IAC9D,MAAM,GAAY,SAAS,CAAA,CAAe,oBAAoB;IACtE,IAAI,QAAQ;QACV,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACtE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACtE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;IACrB,CAAC;IAED,IAAI,SAAS;QACX,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACnC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB;IAC1C,CAAC;IAED,0CAA0C;IAC1C,IAAI,OAAO,KAAK,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC;IAC3G,YAAY,CAAC,EAAU;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IACD,QAAQ,CAAC,GAAW,EAAE,GAAW,IAAY,OAAO,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC;IAE/G,IAAI,CAAqB,CAAwB,2CAA2C;IAE5F,QAAQ;QACN,MAAM,IAAI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oDAAoD;IACpD,YAAY,CAAC,IAAqB,EAAE,MAA0B;QAC5D,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yBAAyB;IACzB,MAAM;QACJ,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAA,CAAE,gCAAgC;QACtE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;IAC/B,CAAC;IAED,2EAA2E;IAC3E,MAAM,CAAC,GAAW,EAAE,GAAW,EAAE,QAA4B,EAAE,OAAuB,IAAI,CAAC,IAAI;QAC7F,6FAA6F;QAC7F,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACrC,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAA,CAAC,4BAA4B;QACpD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,EAAG,uBAAuB;YACrD,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,KAAK,EAAK,CAAA;YAC1B,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM;gBAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA;YACrE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM;gBAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA;SACtE;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA;QACrE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA;QACrE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA,CAAG,mCAAmC;QAC1D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAG,6BAA6B;QAC9C,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,uDAAuD;IACvD,WAAW,CAAC,OAAsB,EAAE,SAAS,GAAG,IAAI;QAClD,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpF,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IACnD,CAAC;IAED,2DAA2D;IAC3D,OAAO,CAAc,EAAuB;QAC1C,KAAK,IAAI,MAAM,IAAI,IAAI,EAAE;YACvB,IAAI,MAAM,KAAK,SAAS;gBAAE,SAAQ;YAClC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAM,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAQ,CAAC,CAAM,CAAC;YAChE,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC;SACvC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,oGAAoG;IACpG,UAAU,CAAc,EAAoB;QAC1C,yDAAyD;QACzD,2DAA2D;QAC3D,KAAK,IAAI,EAAE,IAAI,IAAI,EAAE;YACnB,oDAAoD;YACpD,IAAI,EAAE,KAAK,SAAS;gBAAE,KAAK,IAAI,GAAG,IAAI,EAAE,EAAE;oBAAE,GAAG,KAAK,SAAS,IAAI,EAAE,CAAC,GAAQ,CAAC,CAAA;iBAAE;SAChF;IACH,CAAC;IACD,0DAA0D;IAC1D,UAAU,CAAiB,EAAiB;QAC1C,MAAM,EAAE,GAAQ,EAAE,CAAC;QACnB,IAAI,CAAC,UAAU,CAAI,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO,EAAE,CAAA;IACX,CAAC;IACD,8CAA8C;IAC9C,aAAa,CAAc,EAAuB;QAChD,MAAM,EAAE,GAAQ,EAAE,CAAA;QAClB,IAAI,CAAC,UAAU,CAAI,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;QAClD,OAAO,EAAE,CAAA;IACX,CAAC;IAED,iDAAiD;IACjD,QAAQ,CAAC,GAAS;QAChB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAe,CAAC;QAClC,IAAI,CAAC,GAAG,EAAE,EAAG,uDAAuD;YAClE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACtB;aAAM,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC3B,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;YAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;YACnD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,qDAAqD;YACrD,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAChD,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;SACf;IACH,CAAC;IAED,6EAA6E;IAC7E,IAAI,GAAkC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAEzE,6BAA6B;IAC7B,IAAI,QAAQ;QACV,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,EAAM,EAAE,GAAW,EAAE,KAAW,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,MAAM,KAAK,GAAI,EAAa,CAAC,GAAY,CAAC,CAAC;QAC3C,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,qDAAqD;QAC/E,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC;IAChD,CAAC;IAEQ,OAAO,GAAG,KAAK,EAAY,CAAA,CAAW,8DAA8D;IAE7G,UAAU,CAAC,GAAM,EAAE,GAAO;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC;QACzD,IAAI,OAAO,CAAC,EAAE,CAAC,KAAK,SAAS;YAAE,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,KAAK,EAAK,CAAA;QAC3D,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,SAAS;YAAE,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;QACzD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;IAC1C,CAAC;IAED,8DAA8D;IAC9D,QAAQ,CAAC,GAAM,EAAE,EAAM;QACrB,8DAA8D;QAC9D,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB;QACzE,IAAI,CAAC,GAAG,CAAC,SAAS;YAAE,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAC9D,CAAC;IAED,2CAA2C;IAC3C,IAAI,CAAC,GAAM,EAAE,KAAS,GAAG,EAAE,MAAa,IAAI,EAAE,KAAW,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAA2B,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK;QACnH,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAkB,CAAA;QACjD,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACrB,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,GAAI,EAAa,CAAC,GAAY,CAAC,CAAC,CAAC,kCAAkC;YACnF,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC;YACvB,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;YACnC,IAAI,CAAC,CAAC,IAAI,EAAE;gBACV,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;gBACnB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;aAC9B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;;;;;;;;;OAUG;IACH,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,KAAK,GAAG,IAAI;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAChE,oEAAoE;QACpE,IAAI,IAAI,YAAY,SAAS;YAAE,OAAO,IAAI,CAAC,IAAgB,CAAC;QAC5D,IAAI,KAAK;YAAE,OAAO,SAAS,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAA0C;QAC1G,IAAI,IAAI,YAAY,OAAO;YAAE,OAAO,IAAI,CAAC,IAAgB,CAAC;QAC1D,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,oCAAoC;IAC5B,GAAG,CAAS;IACZ,GAAG,CAAS;IACpB,IAAI,EAAE,KAAK,OAAO,IAAI,CAAC,GAAG,CAAA,CAAC,CAAC;IAC5B,IAAI,EAAE,KAAK,OAAO,IAAI,CAAC,GAAG,CAAA,CAAC,CAAC;IAE5B;;;OAGG;IACH,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM;QACpC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,oDAAoD;IACpD,YAAY;QACV,6BAA6B;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,uCAAuC;QAC7F,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA,CAAC,6BAA6B;IAC/D,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM;QAC7C,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAI,0CAA0C;QAC1G,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,GAAO;QAClD,OAAO,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,GAAO,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;QAChF,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;QACnD,MAAM,UAAU,GAAG,CAAC,EAAM,EAAE,EAAU,EAAM,EAAE;YAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACjF,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,oBAAoB;YAC1D,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,qCAAqC;YAC3E,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAuB;YACzE,OAAO,EAAE,CAAC;QACZ,CAAC,CAAA;QACD,+BAA+B;QAC/B,IAAI,QAAQ,GAAG,CAAC,EAAE,EAAE,GAAG,GAAG,CAAC;QAC3B,IAAI,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,uBAAuB;QAE/E,KAAK,IAAI,QAAQ,GAAG,CAAC,EAAE,QAAQ,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE;YAChD,EAAE,GAAG,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,yDAAyD;YACjF,6DAA6D;YAC7D,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE;gBACxB,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,IAAI,QAAQ,EAAE,GAAG,EAAE,EAAE;oBACxC,EAAE,GAAG,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACxB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;oBAC1D,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC;iBACpC;YACH,CAAC,CAAC,CAAA;SACH;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAU,EAAE,QAAgB,EAAE,EAAM,EAAE,GAAQ;QACxD,MAAM,MAAM,GAAG,KAAK,EAAO,CAAC;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAc,+BAA+B;QAC9D,IAAI,GAAG;YAAE,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,2CAA2C;QAC/E,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE;YACpC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,iDAAiD;YACjD,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;gBACtD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;gBACnD,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,CAAC,mBAAmB,CAAC,MAAa,EAAE,QAAQ,CAAC,CAAC;QAClD,OAAO,MAAa,CAAC;IACvB,CAAC;IAED;;;;;;;OAOG;IACH,aAAa,CAAC,OAAgB,EAAE,QAAQ,GAAG,CAAC,EAAE,MAAe;QAC3D,IAAI,MAAM,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QAC5E,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,0DAA0D;IAC1D,SAAS,CAAC,MAAe;QACvB,IAAI,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACnB,IAAI,QAAQ,GAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,oBAAoB;QACnE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACzB,IAAI,IAAI,GAAG,GAAG,CAAC;YACf,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAU,CAAC,EAAE;gBAC3C,IAAI,IAAI,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,EAAE;oBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAAC,OAAM;iBAAE;aAC7E;QACH,CAAC,CAAC,CAAA;QACF,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,sBAAsB;IAC/F,CAAC;IAGD;;;OAGG;IACH,mBAAmB,CAAC,MAAW,EAAE,QAAQ,GAAG,CAAC;QAC3C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QACjC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;YAC1B,IAAI,CAAC,aAAa,CAAC,MAAwB,EAAE,QAAQ,CAAC,CAAC;SACxD;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,EAAU,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,SAAc,EAAE;QAC/F,MAAM,QAAQ,GAAG,EAA+C,CAAC;QACjE,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAS,eAAe;QACjE,MAAM,QAAQ,GAAG,CAAC,CAAC;QACnB,kEAAkE;QAClE,MAAM,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjD,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE;YACrC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;SACjD;QACD,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC3C,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;OAQG;IACH,YAAY,CAAC,IAAY,EAAE,GAAW,EAAE,GAAW,EAAE,QAAgB,EAAE,MAAa,EAAE,EAAE,GAAG,CAAC;QAC1F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;YACjC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;SAClD;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,CAAS,EAAE,EAAM,EAAE,GAAW,EAAE,IAAI,CAAC,EAAM,EAAE,EAAE,GAAG,CAAC;QAC9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,CAAC,CAAC,EAAE,CAAC,CAAC;YACN,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;SAC/B;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,EAAM,EAAE,CAAS,EAAE,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAgC;QAChF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACjB,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;;AAIH,gDAAgD;AAChD,MAAM,OAAO,OAAQ,SAAQ,MAAW;CAEvC"}
|
package/dist/meeple.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/// <reference types="easeljs" />
|
|
2
2
|
/// <reference types="@thegraid/easeljs-lib/dist/createjs-functions" />
|
|
3
3
|
import { Shape } from "@thegraid/easeljs-module";
|
|
4
|
-
import type { Hex1
|
|
4
|
+
import type { Hex1 } from "./hex";
|
|
5
5
|
import type { Player } from "./player";
|
|
6
6
|
import { PaintableShape } from "./shapes";
|
|
7
|
-
import type { DragContext
|
|
7
|
+
import type { DragContext } from "./table";
|
|
8
8
|
import { Tile } from "./tile";
|
|
9
9
|
declare class MeepleShape extends PaintableShape {
|
|
10
10
|
player: Player;
|
|
@@ -44,13 +44,15 @@ export declare class Meeple extends Tile {
|
|
|
44
44
|
faceUp(up?: boolean): void;
|
|
45
45
|
moveTo(hex: Hex1): void;
|
|
46
46
|
cantBeMovedBy(player: Player, ctx: DragContext): string | boolean | undefined;
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
*
|
|
51
|
-
|
|
47
|
+
/**
|
|
48
|
+
* For Meeples that are constrained to move along a line from current hex.
|
|
49
|
+
* @param toHex
|
|
50
|
+
* @param fromHex [this.hex]
|
|
51
|
+
* @returns true if hex0 and fromHex are on a line
|
|
52
|
+
*/
|
|
53
|
+
isOnLine(toHex: Hex1, fromHex?: Hex1): boolean;
|
|
52
54
|
isLegalTarget0(hex: Hex1, ctx?: DragContext): boolean;
|
|
53
|
-
isLegalTarget(
|
|
55
|
+
isLegalTarget(toHex: Hex1, ctx?: DragContext): boolean;
|
|
54
56
|
isLegalRecycle(ctx: DragContext): boolean;
|
|
55
57
|
resetTile(): void;
|
|
56
58
|
}
|
package/dist/meeple.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeple.d.ts","sourceRoot":"","sources":["../src/meeple.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEjD,OAAO,KAAK,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"meeple.d.ts","sourceRoot":"","sources":["../src/meeple.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEjD,OAAO,KAAK,EAAE,IAAI,EAAS,MAAM,OAAO,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAM,cAAc,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAS,MAAM,SAAS,CAAC;AAElD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,cAAM,WAAY,SAAQ,cAAc;IAInB,MAAM,EAAE,MAAM;IAAS,MAAM;IAHhD,MAAM,CAAC,SAAS,SAA0B;IAC1C,MAAM,CAAC,SAAS,SAA0B;gBAEvB,MAAM,EAAE,MAAM,EAAS,MAAM,SAAe;IAM/D,eAAe,CAAC,CAAC,SAAc;IAI/B,QAAQ,EAAE,KAAK,CAAC;IAChB,WAAW,CAAC,EAAE,EAAE,MAAM;IAStB,0FAA0F;IAC1F,KAAK,CAAC,MAAM,SAAiC,EAAE,EAAE,SAAI,EAAE,EAAE,SAAI;CAK9D;AAED,qBAAa,MAAO,SAAQ,IAAI;IAC9B,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,CAAM;IAEjC,IAAI,QAAQ,UAAsC;IAClD,IAAa,WAAW,WAA0B;IAElD;;;;;OAKG;gBAED,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM;IAWjB,6CAA6C;IAC7C,IAAa,GAAG,IAEM,IAAI,GAAG,SAAS,CAFE;IACxC,mDAAmD;IACnD,IAAa,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,SAAS,EAIrC;IAED,IAAa,MAAM,WAA0B;IACpC,OAAO,CAAC,CAAC,EAAE,OAAO;IAClB,SAAS;IACV,SAAS,EAAE,WAAW,CAAC;IAE/B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,IAAI,CAAC;IAQhB,MAAM;IAQN,wFAAwF;IACxF,MAAM,CAAC,EAAE,UAAO;IAOP,MAAM,CAAC,GAAG,EAAE,IAAI;IAWhB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW;IAKvD;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,OAAmB;IAKhD,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,WAAW;IAQlC,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,WAAW;IAI5C,cAAc,CAAC,GAAG,EAAE,WAAW;IAK/B,SAAS,IAAI,IAAI;CAI3B"}
|