@fideus-labs/fidnii 0.7.1 → 0.7.2
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/dist/OMEZarrNVImage.d.ts
CHANGED
|
@@ -68,6 +68,16 @@ export declare class OMEZarrNVImage extends NVImage {
|
|
|
68
68
|
* so that NiiVue renders them right-side up.
|
|
69
69
|
*/
|
|
70
70
|
private readonly _flipY2D;
|
|
71
|
+
/**
|
|
72
|
+
* Whether the y-flip for 2D images should be applied in the pixel
|
|
73
|
+
* data rather than the NIfTI affine.
|
|
74
|
+
*
|
|
75
|
+
* NiiVue uses a fast Texture2D code path for RGBA 2D images that
|
|
76
|
+
* bypasses the orient shader entirely, so affine-based y-flips have
|
|
77
|
+
* no visual effect. For these images we reverse the row order in the
|
|
78
|
+
* buffer instead.
|
|
79
|
+
*/
|
|
80
|
+
private readonly _flipY2DInData;
|
|
71
81
|
/** Full volume bounds in world space */
|
|
72
82
|
private readonly _volumeBounds;
|
|
73
83
|
/** Current buffer bounds in world space (may differ from full volume when clipped) */
|
|
@@ -229,6 +239,21 @@ export declare class OMEZarrNVImage extends NVImage {
|
|
|
229
239
|
* @param fetchedShape - The shape of the fetched data [z, y, x]
|
|
230
240
|
*/
|
|
231
241
|
private updateHeaderForRegion;
|
|
242
|
+
/**
|
|
243
|
+
* Reverse the row order of a 2D pixel buffer in place.
|
|
244
|
+
*
|
|
245
|
+
* Used for RGBA 2D images where NiiVue's Texture2D fast path
|
|
246
|
+
* bypasses the orient shader and the affine-based y-flip has no
|
|
247
|
+
* visual effect. Instead we physically reverse the scanlines so
|
|
248
|
+
* the top-to-bottom PNG row order becomes bottom-to-top, matching
|
|
249
|
+
* WebGL's texture coordinate convention.
|
|
250
|
+
*
|
|
251
|
+
* @param data - Typed array containing the pixel data
|
|
252
|
+
* @param width - Number of pixels per row (x dimension)
|
|
253
|
+
* @param height - Number of rows (y dimension)
|
|
254
|
+
* @param bytesPerPixel - Bytes per pixel (e.g. 4 for RGBA)
|
|
255
|
+
*/
|
|
256
|
+
private _flipRowsInPlace;
|
|
232
257
|
/**
|
|
233
258
|
* Update NiiVue clip planes from current _clipPlanes.
|
|
234
259
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OMEZarrNVImage.d.ts","sourceRoot":"","sources":["../src/OMEZarrNVImage.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"OMEZarrNVImage.d.ts","sourceRoot":"","sources":["../src/OMEZarrNVImage.ts"],"names":[],"mappings":"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"}
|
package/dist/OMEZarrNVImage.js
CHANGED
|
@@ -97,6 +97,16 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
97
97
|
* so that NiiVue renders them right-side up.
|
|
98
98
|
*/
|
|
99
99
|
_flipY2D;
|
|
100
|
+
/**
|
|
101
|
+
* Whether the y-flip for 2D images should be applied in the pixel
|
|
102
|
+
* data rather than the NIfTI affine.
|
|
103
|
+
*
|
|
104
|
+
* NiiVue uses a fast Texture2D code path for RGBA 2D images that
|
|
105
|
+
* bypasses the orient shader entirely, so affine-based y-flips have
|
|
106
|
+
* no visual effect. For these images we reverse the row order in the
|
|
107
|
+
* buffer instead.
|
|
108
|
+
*/
|
|
109
|
+
_flipY2DInData;
|
|
100
110
|
/** Full volume bounds in world space */
|
|
101
111
|
_volumeBounds;
|
|
102
112
|
/** Current buffer bounds in world space (may differ from full volume when clipped) */
|
|
@@ -240,6 +250,11 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
240
250
|
// Detect 2D images (no z axis) and store y-flip preference
|
|
241
251
|
this._is2D = highResImage.dims.indexOf("z") === -1;
|
|
242
252
|
this._flipY2D = options.flipY2D ?? true;
|
|
253
|
+
// NiiVue uses a Texture2D fast path for RGBA 2D images that
|
|
254
|
+
// bypasses the orient shader. Affine-based y-flips have no
|
|
255
|
+
// visual effect in that path, so we flip the pixel data instead.
|
|
256
|
+
this._flipY2DInData =
|
|
257
|
+
this._flipY2D && this._is2D && this._channelInfo !== null;
|
|
243
258
|
// Detect time dimension from the zarr axes
|
|
244
259
|
const tDimIndex = highResImage.dims.indexOf("t");
|
|
245
260
|
if (tDimIndex !== -1) {
|
|
@@ -365,7 +380,7 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
365
380
|
];
|
|
366
381
|
placeholderAffine[mapping.x.physicalRow][0] = mapping.x.sign;
|
|
367
382
|
let ySign = mapping.y.sign;
|
|
368
|
-
if (this._flipY2D && this._is2D) {
|
|
383
|
+
if (this._flipY2D && this._is2D && !this._flipY2DInData) {
|
|
369
384
|
ySign = (ySign * -1);
|
|
370
385
|
}
|
|
371
386
|
placeholderAffine[mapping.y.physicalRow][1] = ySign;
|
|
@@ -548,6 +563,16 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
548
563
|
// uint8 RGB or scalar: direct copy
|
|
549
564
|
targetData.set(result.data);
|
|
550
565
|
}
|
|
566
|
+
// For RGBA 2D images, reverse the row order so the top-to-bottom
|
|
567
|
+
// pixel data matches WebGL's bottom-to-top texture convention.
|
|
568
|
+
// NiiVue's Texture2D fast path for RGBA 2D images skips the orient
|
|
569
|
+
// shader, so the affine-based y-flip has no effect on rendering.
|
|
570
|
+
if (this._flipY2DInData) {
|
|
571
|
+
const components = this._channelInfo?.components ?? 1;
|
|
572
|
+
this._flipRowsInPlace(targetData, fetchedShape[2], // x dimension (width)
|
|
573
|
+
fetchedShape[1], // y dimension (height)
|
|
574
|
+
components * this.bufferManager.getBytesPerPixel());
|
|
575
|
+
}
|
|
551
576
|
// Update this.img to point to the (possibly new) buffer
|
|
552
577
|
this.img = this.bufferManager.getTypedArray();
|
|
553
578
|
// Update NVImage header with correct dimensions and transforms
|
|
@@ -655,7 +680,12 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
655
680
|
// top-to-bottom pixel storage order. We shift the translation so
|
|
656
681
|
// the last row maps to where the first row was, then negate the
|
|
657
682
|
// y column. This composes correctly with any orientation sign.
|
|
658
|
-
|
|
683
|
+
//
|
|
684
|
+
// Skip the affine flip when _flipY2DInData is set: NiiVue's RGBA
|
|
685
|
+
// 2D Texture2D fast path ignores the orient shader, so the affine
|
|
686
|
+
// y-flip has no visual effect. In that case the rows are reversed
|
|
687
|
+
// in the pixel buffer instead (see _flipRowsInPlace).
|
|
688
|
+
if (this._flipY2D && this._is2D && !this._flipY2DInData) {
|
|
659
689
|
// Get the y axis orientation mapping to find where the y scale is stored
|
|
660
690
|
const mapping = getOrientationMapping(ngffImage.axesOrientations);
|
|
661
691
|
// The y scale is at affine[4 + physicalRow] (column 1, appropriate row)
|
|
@@ -669,6 +699,33 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
669
699
|
// Recalculate RAS orientation
|
|
670
700
|
this.calculateRAS();
|
|
671
701
|
}
|
|
702
|
+
/**
|
|
703
|
+
* Reverse the row order of a 2D pixel buffer in place.
|
|
704
|
+
*
|
|
705
|
+
* Used for RGBA 2D images where NiiVue's Texture2D fast path
|
|
706
|
+
* bypasses the orient shader and the affine-based y-flip has no
|
|
707
|
+
* visual effect. Instead we physically reverse the scanlines so
|
|
708
|
+
* the top-to-bottom PNG row order becomes bottom-to-top, matching
|
|
709
|
+
* WebGL's texture coordinate convention.
|
|
710
|
+
*
|
|
711
|
+
* @param data - Typed array containing the pixel data
|
|
712
|
+
* @param width - Number of pixels per row (x dimension)
|
|
713
|
+
* @param height - Number of rows (y dimension)
|
|
714
|
+
* @param bytesPerPixel - Bytes per pixel (e.g. 4 for RGBA)
|
|
715
|
+
*/
|
|
716
|
+
_flipRowsInPlace(data, width, height, bytesPerPixel) {
|
|
717
|
+
const rowBytes = width * bytesPerPixel;
|
|
718
|
+
const buf = new Uint8Array(data.buffer, data.byteOffset, data.byteLength);
|
|
719
|
+
const tmp = new Uint8Array(rowBytes);
|
|
720
|
+
for (let y = 0; y < height >>> 1; y++) {
|
|
721
|
+
const topOffset = y * rowBytes;
|
|
722
|
+
const botOffset = (height - 1 - y) * rowBytes;
|
|
723
|
+
// Swap top row ↔ bottom row via tmp
|
|
724
|
+
tmp.set(buf.subarray(topOffset, topOffset + rowBytes));
|
|
725
|
+
buf.copyWithin(topOffset, botOffset, botOffset + rowBytes);
|
|
726
|
+
buf.set(tmp, botOffset);
|
|
727
|
+
}
|
|
728
|
+
}
|
|
672
729
|
/**
|
|
673
730
|
* Update NiiVue clip planes from current _clipPlanes.
|
|
674
731
|
*
|
|
@@ -2183,6 +2240,13 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
2183
2240
|
// uint8 RGB or scalar: direct copy
|
|
2184
2241
|
targetData.set(result.data);
|
|
2185
2242
|
}
|
|
2243
|
+
// Reverse row order for RGBA 2D images (see populateVolume).
|
|
2244
|
+
if (this._flipY2DInData) {
|
|
2245
|
+
const components = this._channelInfo?.components ?? 1;
|
|
2246
|
+
this._flipRowsInPlace(targetData, fetchedShape[2], // x dimension (width)
|
|
2247
|
+
fetchedShape[1], // y dimension (height)
|
|
2248
|
+
components * targetData.BYTES_PER_ELEMENT);
|
|
2249
|
+
}
|
|
2186
2250
|
slabState.nvImage.img =
|
|
2187
2251
|
slabState.bufferManager.getTypedArray();
|
|
2188
2252
|
// Update slab position tracking
|
|
@@ -2294,8 +2358,9 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
2294
2358
|
affine[1] * offsetX + affine[5] * offsetY + affine[9] * offsetZ;
|
|
2295
2359
|
affine[14] +=
|
|
2296
2360
|
affine[2] * offsetX + affine[6] * offsetY + affine[10] * offsetZ;
|
|
2297
|
-
// For 2D images, flip y before normalization (composes with orientation)
|
|
2298
|
-
|
|
2361
|
+
// For 2D images, flip y before normalization (composes with orientation).
|
|
2362
|
+
// Skip when _flipY2DInData: rows are already reversed in the buffer.
|
|
2363
|
+
if (this._flipY2D && this._is2D && !this._flipY2DInData) {
|
|
2299
2364
|
// Get the y axis orientation mapping to find where the y scale is stored
|
|
2300
2365
|
const mapping = getOrientationMapping(ngffImage.axesOrientations);
|
|
2301
2366
|
// The y scale is at affine[4 + physicalRow] (column 1, appropriate row)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OMEZarrNVImage.js","sourceRoot":"","sources":["../src/OMEZarrNVImage.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OMEZarrNVImage.js","sourceRoot":"","sources":["../src/OMEZarrNVImage.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,+BAA+B;AAG/B,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EACL,yBAAyB,EACzB,cAAc,GACf,MAAM,gCAAgC,CAAA;AAEvC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,eAAe,EACf,kBAAkB,GACnB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,mBAAmB,GAKpB,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,EACL,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,yBAAyB,CAAA;AAmBhC,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,qBAAqB,CAAA;AAE5B,MAAM,kBAAkB,GAAG,UAAU,CAAA;AACrC,MAAM,yBAAyB,GAAG,GAAG,CAAA;AAErC;;;;;;;;;GASG;AACH,MAAM,OAAO,cAAe,SAAQ,OAAO;IACzC,oCAAoC;IAC3B,WAAW,CAAa;IAEjC,sCAAsC;IAC7B,SAAS,CAAQ;IAE1B;;;;;;OAMG;IACM,YAAY,CAAS;IAE9B,+DAA+D;IAC/D,oBAAoB;IACpB,+DAA+D;IAE/D;;;;;;OAMG;IACH,IAAa,QAAQ;QACnB,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAED,IAAa,QAAQ,CAAC,EAAU;QAC9B,4DAA4D;QAC5D,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAA;QACnB,0CAA0C;QAC1C,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC9C,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAA;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAED,mCAAmC;IAClB,MAAM,CAAQ;IAE/B,sDAAsD;IACrC,aAAa,CAAe;IAE7C,oDAAoD;IACnC,SAAS,CAAiB;IAE3C,8DAA8D;IAC7C,WAAW,CAAwB;IAEpD,yCAAyC;IACjC,WAAW,CAAY;IAE/B,yDAAyD;IACjD,gBAAgB,CAAQ;IAEhC,gEAAgE;IACxD,iBAAiB,CAAQ;IAEjC,qCAAqC;IAC7B,SAAS,GAAY,KAAK,CAAA;IAElC,8BAA8B;IACb,KAAK,CAAW;IAEjC;;;;OAIG;IACc,YAAY,CAAoB;IAEjD;;OAEG;IACc,KAAK,CAAS;IAE/B;;;OAGG;IACc,QAAQ,CAAS;IAElC;;;;;;;;OAQG;IACc,cAAc,CAAS;IAExC,wCAAwC;IACvB,aAAa,CAAc;IAE5C,sFAAsF;IAC9E,oBAAoB,CAAc;IAE1C,0EAA0E;IAClE,yBAAyB,CAAkB;IAEnD,iDAAiD;IAChC,mBAAmB,CAAQ;IAE5C,sDAAsD;IAC9C,uBAAuB,GAAyC,IAAI,CAAA;IAE5E,0DAA0D;IAClD,mBAAmB,GAAe,EAAE,CAAA;IAE5C,4EAA4E;IACpE,mBAAmB,GAAW,CAAC,CAAA;IAEvC,yEAAyE;IACjE,MAAM,CAAmB;IAEjC,mEAAmE;IAC3D,cAAc,GAAW,CAAC,CAAA;IAElC,iFAAiF;IACzE,sBAAsB,GAAW,CAAC,CAAC,CAAA;IAE3C,uEAAuE;IACtD,YAAY,GAAG,IAAI,WAAW,EAAE,CAAA;IAEjD,6EAA6E;IACrE,uBAAuB,GAGpB,IAAI,CAAA;IAEf;;;;OAIG;IACK,wBAAwB,GAA2B,IAAI,CAAA;IAE/D,gFAAgF;IACxE,uBAAuB,GAAoB,SAAS,CAAA;IAE5D,+DAA+D;IAC/D,+BAA+B;IAC/B,+DAA+D;IAE/D,gDAAgD;IACxC,gBAAgB,GAAqC,IAAI,GAAG,EAAE,CAAA;IAEtE,mDAAmD;IAC3C,YAAY,GAAwC,IAAI,GAAG,EAAE,CAAA;IAErE,sDAAsD;IAC9C,mBAAmB,GAGvB,IAAI,GAAG,EAAE,CAAA;IAEb,+DAA+D;IAC/D,kCAAkC;IAClC,+DAA+D;IAE/D,6DAA6D;IACrD,qBAAqB,GAAY,KAAK,CAAA;IAE9C;;;OAGG;IACK,iBAAiB,GAAwB,IAAI,CAAA;IAErD;;;OAGG;IACK,sBAAsB,GAC5B,IAAI,GAAG,EAAE,CAAA;IAEX,mDAAmD;IAC3C,sBAAsB,GAAyC,IAAI,CAAA;IAE3E,qEAAqE;IAC7D,qBAAqB,GAAwC,IAAI,GAAG,EAAE,CAAA;IAE9E,+DAA+D;IAC/D,uBAAuB;IACvB,+DAA+D;IAE/D;;;OAGG;IACc,aAAa,GAAwB,IAAI,CAAA;IAE1D,oEAAoE;IAC5D,UAAU,GAAW,CAAC,CAAA;IAE9B,qEAAqE;IACpD,kBAAkB,CAAQ;IAE3C;;;OAGG;IACc,eAAe,CAAmC;IAEnE,mEAAmE;IAClD,uBAAuB,GAAgB,IAAI,GAAG,EAAE,CAAA;IAEjE,2DAA2D;IACnD,wBAAwB,GAA2B,IAAI,CAAA;IAE/D;;;;;OAKG;IACK,iBAAiB,GAGd,IAAI,CAAA;IAEf,+DAA+D;IAC/D,mBAAmB;IACnB,+DAA+D;IAE/D,yDAAyD;IACxC,UAAU,CAAQ;IAEnC,yDAAyD;IACxC,UAAU,CAAQ;IAEnC;;;;OAIG;IACK,MAAM,CAAU,oBAAoB,GAAG,GAAG,CAAA;IAElD,2DAA2D;IACnD,MAAM,CAAU,2BAA2B,GAAG,CAAC,CAAA;IAEvD;;OAEG;IACH,YAAoB,OAA8B;QAChD,+CAA+C;QAC/C,KAAK,EAAE,CAAA;QAEP,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;QACtC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAA;QACxD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,OAAO,CAAC,mBAAmB,CAAA;QAC3E,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC5B,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,IAAI,GAAG,CAAA;QAE7D,0EAA0E;QAC1E,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,IAAI,yBAAyB,CAAA;QACvE,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,KAAK,CAAA;QAClC,CAAC;aAAM,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,QAAQ,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAA;QACtD,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACtD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAA;QAC3C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,IAAI,GAAG,CAAA;QAC1C,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,aAAa,IAAI,IAAI,CAAA;QAE1D,wDAAwD;QACxD,IAAI,CAAC,WAAW,GAAG,uBAAuB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAE5D,8CAA8C;QAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC/C,IAAI,CAAC,KAAK,GAAG,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAEvD,kEAAkE;QAClE,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,CAAA;QAEhD,yEAAyE;QACzE,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,4CAA4C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG;gBACzE,0BAA0B,IAAI,CAAC,KAAK,6BAA6B;gBACjE,0DAA0D;gBAC1D,mEAAmE,CACtE,CAAA;QACH,CAAC;QAED,2DAA2D;QAC3D,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;QAClD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAA;QAEvC,4DAA4D;QAC5D,2DAA2D;QAC3D,iEAAiE;QACjE,IAAI,CAAC,cAAc;YACjB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAA;QAE3D,2CAA2C;QAC3C,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAChD,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACpD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;gBAClB,uCAAuC;gBACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CACpD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CACtB,CAAA;gBACD,IAAI,CAAC,aAAa,GAAG;oBACnB,KAAK,EAAE,SAAS;oBAChB,QAAQ,EAAE,SAAS;oBACnB,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;oBAC/B,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;oBACvC,IAAI,EAAE,QAAQ,EAAE,IAA4B;iBAC7C,CAAA;YACH,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,IAAI,CAAC,kBAAkB;YACrB,OAAO,CAAC,iBAAiB,IAAI,cAAc,CAAC,2BAA2B,CAAA;QACzE,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,IAAI,CAAC,CAAA;QAC/C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa;YAClC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACvE,CAAC,CAAC,CAAC,CAAA;QAEL,8EAA8E;QAC9E,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAA;QACrD,IAAI,CAAC,eAAe,GAAG,IAAI,QAAQ,CAA0B;YAC3D,GAAG,EAAE,aAAa;SACnB,CAAC,CAAA;QAEF,4EAA4E;QAC5E,yEAAyE;QACzE,8EAA8E;QAC9E,oEAAoE;QACpE,MAAM,aAAa,GAAG,uBAAuB,CAC3C,YAAY,CAAC,KAAK,EAClB,YAAY,CAAC,WAAW,CACzB,CAAA;QACD,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,CAAA;QACjD,IAAI,CAAC,aAAa,GAAG,oBAAoB,CAAC,aAAa,EAAE,YAAY,CAAC,CAAA;QAEtE,kEAAkE;QAClE,IAAI,CAAC,oBAAoB,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAA;QAErD,oDAAoD;QACpD,MAAM,SAAS,GAAG,gBAAgB,CAChC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,CACnB,CAAA;QACD,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC,UAAU,CAAA;QAC5C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;QAE3D,6DAA6D;QAC7D,8DAA8D;QAC9D,gDAAgD;QAChD,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,IAAI,CAAC,CAAA;QAC7D,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CACpC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,KAAK,EACV,kBAAkB,CACnB,CAAA;QAED,wDAAwD;QACxD,sDAAsD;QACtD,IAAI,CAAC,2BAA2B,EAAE,CAAA;IACpC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAA8B;QAChD,MAAM,KAAK,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAA;QAEzC,iEAAiE;QACjE,MAAM,mBAAmB,GAAG,IAAI,eAAe,EAAE,CAAA;QACjD,KAAK,CAAC,yBAAyB,GAAG,mBAAmB,CAAA;QACrD,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAC3B,iBAAiB,EACjB,CAAC,CAAC,EAAE,EAAE;YACJ,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACnD,CAAC,EACD,EAAE,MAAM,EAAE,mBAAmB,CAAC,MAAM,EAAE,CACvC,CAAA;QAED,yEAAyE;QACzE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAEhC,mEAAmE;QACnE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAA;QACzC,IAAI,QAAQ,EAAE,CAAC;YACb,uEAAuE;YACvE,4DAA4D;YAC5D,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CACjD,CAAC,CAAC,EAAuB,EAAE,CAAC,CAAC,YAAY,cAAc,CACxD,CAAA;YACD,KAAK,MAAM,CAAC,IAAI,eAAe,EAAE,CAAC;gBAChC,4DAA4D;gBAC5D,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;gBAC5B,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YAC9B,CAAC;YACD,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;YAC7B,KAAK,KAAK,CAAC,cAAc,EAAE,CAAA,CAAC,uCAAuC;QACrE,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;OAGG;IACK,2BAA2B;QACjC,8CAA8C;QAC9C,MAAM,GAAG,GAAG,IAAI,MAAM,EAAE,CAAA;QACxB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QAEd,2DAA2D;QAC3D,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAEnC,8DAA8D;QAC9D,kEAAkE;QAClE,IAAI,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACtD,GAAG,CAAC,YAAY,GAAG,OAAO,CAAA;YAC1B,GAAG,CAAC,eAAe,GAAG,OAAO,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACjE,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC/C,GAAG,CAAC,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACxD,CAAC;QAED,+BAA+B;QAC/B,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAEtC,qEAAqE;QACrE,oEAAoE;QACpE,uEAAuE;QACvE,qBAAqB;QACrB,MAAM,OAAO,GAAG,qBAAqB,CACnC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAC7C,CAAA;QACD,MAAM,iBAAiB,GAAG;YACxB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACZ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACZ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACZ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACb,CAAA;QACD,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;QAC5D,IAAI,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;QAC1B,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACxD,KAAK,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAW,CAAA;QAChC,CAAC;QACD,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;QACnD,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;QAC5D,GAAG,CAAC,MAAM,GAAG,iBAAiB,CAAA;QAE9B,GAAG,CAAC,UAAU,GAAG,CAAC,CAAA,CAAC,sBAAsB;QAEzC,WAAW;QACX,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,IAAI,UAAU,CAAA;QAEzD,uEAAuE;QACvE,6CAA6C;QAC7C,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAmB,CAAA;QAEjE,qEAAqE;QACrE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAA;QACzB,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAA;IACrB,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,cAAc,CAClB,cAAuB,KAAK,EAC5B,UAA2B,SAAS;QAEpC,uDAAuD;QACvD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;gBAC1C,6DAA6D;gBAC7D,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE;oBAChC,MAAM,EAAE,iBAAiB;oBACzB,OAAO,EAAE,IAAI,CAAC,uBAAuB,CAAC,OAAO;iBAC9C,CAAC,CAAA;YACJ,CAAC;YACD,+CAA+C;YAC/C,IAAI,CAAC,uBAAuB,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,CAAA;YACvD,8DAA8D;YAC9D,IAAI,CAAC,wBAAwB,EAAE,KAAK,EAAE,CAAA;YACtC,OAAM;QACR,CAAC;QAED,iEAAiE;QACjE,IAAI,CAAC,wBAAwB,EAAE,KAAK,EAAE,CAAA;QACtC,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QAC7C,IAAI,CAAC,wBAAwB,GAAG,eAAe,CAAA;QAE/C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACrB,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAA;QACtC,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAA,CAAC,kCAAkC;QAEtE,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAA;YAChD,MAAM,WAAW,GAAG,SAAS,GAAG,CAAC,CAAA;YAEjC,kFAAkF;YAClF,IAAI,CAAC,WAAW,IAAI,WAAW,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1D,MAAM,IAAI,CAAC,mBAAmB,CAC5B,WAAW,EACX,SAAS,EACT,SAAS,EACT,eAAe,CAAC,MAAM,CACvB,CAAA;gBACD,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO;oBAAE,OAAM;gBAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAA;gBACxC,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAA;gBAEpC,yCAAyC;gBACzC,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;oBAC9B,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE;wBAClC,YAAY,EAAE,IAAI,CAAC,iBAAiB;wBACpC,WAAW,EAAE,IAAI,CAAC,gBAAgB;wBAClC,aAAa,EAAE,SAAS;wBACxB,OAAO,EAAE,IAAI,CAAC,uBAAuB;qBACtC,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YAED,qCAAqC;YACrC,MAAM,IAAI,CAAC,mBAAmB,CAC5B,IAAI,CAAC,gBAAgB,EACrB,QAAQ,EACR,SAAS,EACT,eAAe,CAAC,MAAM,CACvB,CAAA;YACD,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO;gBAAE,OAAM;YAC1C,MAAM,qBAAqB,GAAG,IAAI,CAAC,iBAAiB,CAAA;YACpD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAA;YAE9C,wCAAwC;YACxC,IAAI,qBAAqB,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACpD,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE;oBAClC,YAAY,EAAE,IAAI,CAAC,iBAAiB;oBACpC,WAAW,EAAE,IAAI,CAAC,gBAAgB;oBAClC,aAAa,EAAE,qBAAqB;oBACpC,OAAO,EAAE,IAAI,CAAC,uBAAuB;iBACtC,CAAC,CAAA;YACJ,CAAC;YAED,iEAAiE;YACjE,kFAAkF;YAClF,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAChE,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YACjD,MAAM,MAAM,GAAG,uBAAuB,CACpC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAA;YACD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;YACrD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAA;QACrE,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;YACtB,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAA;YACpC,IAAI,CAAC,4BAA4B,EAAE,CAAA;QACrC,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,4BAA4B;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,CAAA;QAC5C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAA;YACnC,wDAAwD;YACxD,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;YAC9D,OAAM;QACR,CAAC;QAED,mDAAmD;QACnD,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE;YAClC,YAAY,EAAE,IAAI,CAAC,iBAAiB;YACpC,WAAW,EAAE,IAAI,CAAC,gBAAgB;YAClC,OAAO,EAAE,IAAI,CAAC,uBAAuB;SACtC,CAAC,CAAA;QAEF,mEAAmE;QACnE,4CAA4C;QAC5C,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,KAAK,CAAC,mBAAmB,CAC/B,UAAkB,EAClB,WAAmB,EACnB,SAAkB,EAClB,MAAoB;QAEpB,MAAM,kBAAkB,GAAG,SAAS,IAAI,IAAI,CAAC,UAAU,CAAA;QACvD,0BAA0B;QAC1B,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE;YAC9B,UAAU;YACV,OAAO,EAAE,IAAI,CAAC,uBAAuB;SACtC,CAAC,CAAA;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAErD,gFAAgF;QAChF,MAAM,WAAW,GAAG,uBAAuB,CACzC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,SAAS,EACT,IAAI,CAAC,iBAAiB,IAAI,SAAS,CACpC,CAAA;QACD,MAAM,aAAa,GAAG,aAAa,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;QAE3D,uCAAuC;QACvC,MAAM,YAAY,GAA6B;YAC7C,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACrE,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACrE,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;SACtE,CAAA;QAED,iBAAiB;QACjB,MAAM,WAAW,GAAgB;YAC/B,KAAK,EAAE,aAAa,CAAC,iBAAiB;YACtC,GAAG,EAAE,aAAa,CAAC,eAAe;SACnC,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAC7C,SAAS,EACT,UAAU,EACV,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,MAAM,CACP,CAAA;QAED,+DAA+D;QAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QAE1D,kEAAkE;QAClE,mEAAmE;QACnE,MAAM,SAAS,GAAG,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;QAC9D,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;QACvD,CAAC;QAED,IAAI,SAAS,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACnC,sEAAsE;YACtE,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CACrC,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,YAAY,CAAC,UAAU,CAC7B,CAAA;YACD,MAAM,UAAU,GAAG,gBAAgB,CACjC,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,YAAY,CAAC,UAAU,EAC5B,OAAO,CACR,CAAA;YACD,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,mCAAmC;YACnC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC;QAED,iEAAiE;QACjE,+DAA+D;QAC/D,mEAAmE;QACnE,iEAAiE;QACjE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,IAAI,CAAC,CAAA;YACrD,IAAI,CAAC,gBAAgB,CACnB,UAAU,EACV,YAAY,CAAC,CAAC,CAAC,EAAE,sBAAsB;YACvC,YAAY,CAAC,CAAC,CAAC,EAAE,uBAAuB;YACxC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CACnD,CAAA;QACH,CAAC;QAED,wDAAwD;QACxD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,EAAoB,CAAA;QAE/D,+DAA+D;QAC/D,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,aAAa,EAAE,YAAY,CAAC,CAAA;QAElE,mEAAmE;QACnE,qCAAqC;QACrC,IAAI,CAAC,iBAAiB,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,CAAA;QAE9D,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,qEAAqE;YACrE,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAC7C,CAAC;aAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACtB,kEAAkE;YAClE,4DAA4D;YAC5D,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;QACvD,CAAC;QAED,iFAAiF;QACjF,+EAA+E;QAC/E,gFAAgF;QAChF,gFAAgF;QAChF,gEAAgE;QAChE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;QAE3B,4BAA4B;QAC5B,IAAI,CAAC,sBAAsB,EAAE,CAAA;QAE7B,iBAAiB;QACjB,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;QAE5B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,mEAAmE;YACnE,0EAA0E;YAC1E,0EAA0E;YAC1E,0EAA0E;YAC1E,wDAAwD;YACxD,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE;YACjC,UAAU;YACV,OAAO,EAAE,IAAI,CAAC,uBAAuB;SACtC,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACK,qBAAqB,CAC3B,SAAoB,EACpB,MAA0B,EAC1B,YAAsC;QAEtC,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAM;QAErB,+EAA+E;QAC/E,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAA;QAC7B,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA;QAClC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA;QAClC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA;QAElC,oDAAoD;QACpD,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAE9C,kEAAkE;QAClE,sCAAsC;QACtC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG;YACd,CAAC;YACD,YAAY,CAAC,CAAC,CAAC;YACf,YAAY,CAAC,CAAC,CAAC;YACf,YAAY,CAAC,CAAC,CAAC;YACf,CAAC;YACD,CAAC;YACD,CAAC;YACD,CAAC;SACF,CAAA;QAED,6DAA6D;QAC7D,oEAAoE;QACpE,MAAM,WAAW,GAAG,MAAM,CAAC,iBAAiB,CAAA;QAC5C,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAA;QACzC,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;QACtE,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;QACtE,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;QAEtE,IAAI,CAAC,oBAAoB,GAAG;YAC1B,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YACjB,GAAG,EAAE;gBACH,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,EAAE;gBACzB,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,EAAE;gBACzB,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,EAAE;aAC1B;SACF,CAAA;QAED,qEAAqE;QACrE,gEAAgE;QAChE,iEAAiE;QACjE,oEAAoE;QACpE,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAA;QAEnD,qEAAqE;QACrE,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA,CAAC,mBAAmB;QAClD,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA,CAAC,mBAAmB;QAClD,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA,CAAC,mBAAmB;QAClD,MAAM,CAAC,EAAE,CAAC;YACR,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAA;QACjE,MAAM,CAAC,EAAE,CAAC;YACR,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAA;QACjE,MAAM,CAAC,EAAE,CAAC;YACR,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,CAAA;QAElE,gEAAgE;QAChE,iEAAiE;QACjE,gEAAgE;QAChE,+DAA+D;QAC/D,EAAE;QACF,iEAAiE;QACjE,kEAAkE;QAClE,kEAAkE;QAClE,sDAAsD;QACtD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACxD,yEAAyE;YACzE,MAAM,OAAO,GAAG,qBAAqB,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAA;YACjE,wEAAwE;YACxE,MAAM,WAAW,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAA;YAC7C,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAC5C,CAAC;QAED,0BAA0B;QAC1B,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;QACxC,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAE1E,8BAA8B;QAC9B,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,gBAAgB,CACtB,IAAmD,EACnD,KAAa,EACb,MAAc,EACd,aAAqB;QAErB,MAAM,QAAQ,GAAG,KAAK,GAAG,aAAa,CAAA;QACtC,MAAM,GAAG,GAAG,IAAI,UAAU,CACxB,IAAI,CAAC,MAAqB,EAC1B,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,UAAU,CAChB,CAAA;QACD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAA;QAEpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,CAAC,GAAG,QAAQ,CAAA;YAC9B,MAAM,SAAS,GAAG,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAA;YAE7C,oCAAoC;YACpC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAA;YACtD,GAAG,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,QAAQ,CAAC,CAAA;YAC1D,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;QACzB,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,sBAAsB;QAC5B,sDAAsD;QACtD,qEAAqE;QACrE,MAAM,gBAAgB,GAAG,kBAAkB,CACzC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,oBAAoB,CAC1B,CAAA;QAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,GAAG,gBAAgB,CAAA;QAC7D,CAAC;aAAM,CAAC;YACN,4DAA4D;YAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACxD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,kBAAkB;QACxB,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM;YAAE,OAAM;QAEvD,sCAAsC;QACtC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAChC,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;QAClD,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAA;QAE9B,IAAI,MAAM,EAAE,CAAC;YACX,iFAAiF;YACjF,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,CAAA;YACzC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,CAAA;YAEvC,IAAI,MAAM,KAAK,SAAS;gBAAE,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,MAAM,CAAA;YACnD,IAAI,MAAM,KAAK,SAAS;gBAAE,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,MAAM,CAAA;QACrD,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACK,mBAAmB,CAAC,OAAgB,EAAE,IAAgB;QAC5D,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAwB,CAAC,CAAC,CAAC,IAAI,CAC9D,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAChB,CAAA;QAED,MAAM,CAAC,GAAa,EAAE,CAAA;QACtB,MAAM,CAAC,GAAa,EAAE,CAAA;QACtB,MAAM,CAAC,GAAa,EAAE,CAAA;QACtB,MAAM,CAAC,GAAa,EAAE,CAAA;QACtB,MAAM,CAAC,GAAa,EAAE,CAAA;QACtB,MAAM,MAAM,GAAa,EAAE,CAAA;QAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;YAC7B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAEb,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,0BAA0B;gBAC1B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACT,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACT,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACT,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACT,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAC3B,CAAC;iBAAM,CAAC;gBACN,qDAAqD;gBACrD,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAA;gBACvE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;gBACrC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;gBACrC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;gBACrC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACX,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YAC5B,CAAC;QACH,CAAC;QAED,6DAA6D;QAC7D,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IACrD,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,mBAAmB,CAC/B,SAAoB,EACpB,UAAkB;QAElB,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAA;QAEtD,IAAI,aAAa,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClC,yDAAyD;YACzD,IAAI,CAAC,MAAM,GAAG,aAAa,CAAA;YAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAA;YACzB,OAAM;QACR,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,yCAAyC;YACzC,2EAA2E;YAC3E,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;YACtD,MAAM,cAAc,GAAG,UAAU,KAAK,WAAW,CAAA;YACjD,MAAM,aAAa,GAAG,UAAU,KAAK,IAAI,CAAC,gBAAgB,CAAA;YAC1D,MAAM,YAAY,GAChB,cAAc;gBACd,CAAC,aAAa,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAE1E,IAAI,YAAY,EAAE,CAAC;gBACjB,+DAA+D;gBAC/D,wDAAwD;gBACxD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW;oBAChC,CAAC,CAAE,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAA8B;oBAC1D,CAAC,CAAC,SAAS,CAAA;gBACb,MAAM,aAAa,GAAG,MAAM,yBAAyB,CACnD,SAAS,EACT,SAAS,CACV,CAAA;gBACD,IAAI,CAAC,MAAM,GAAG,aAAa,CAAA;gBAC3B,IAAI,CAAC,sBAAsB,GAAG,UAAU,CAAA;gBACxC,IAAI,CAAC,kBAAkB,EAAE,CAAA;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACK,kBAAkB,CACxB,IAAgB,EAChB,UAAkB;QAElB,IAAI,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;YAClC,MAAM,OAAO,GAAoB,EAAE,CAAA;YACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,MAAM,OAAO,GACX,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAA;gBACpE,MAAM,GAAG,GAAG,OAAO,EAAE,MAAM,CAAA;gBAC3B,IAAI,GAAG,EAAE,CAAC;oBACR,OAAO,CAAC,IAAI,CAAC;wBACX,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;wBAChC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;qBAC7B,CAAC,CAAA;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;gBACpC,CAAC;YACH,CAAC;YACD,OAAO,OAAO,CAAA;QAChB,CAAC;QAED,gEAAgE;QAChE,OAAO,oBAAoB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;IAC/C,CAAC;IAED;;;OAGG;IACK,uBAAuB,CAAC,UAAoB;QAClD,oEAAoE;QACpE,qEAAqE;IACvE,CAAC;IAED;;;;;;;;;;OAUG;IACH,aAAa,CAAC,MAAkB;QAC9B,sBAAsB;QACtB,kBAAkB,CAAC,MAAM,CAAC,CAAA;QAE1B,6DAA6D;QAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAA;QAE1E,wBAAwB;QACxB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAA6B;YAC/C,MAAM,EAAE,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAA6B,CAAC;SACnE,CAAC,CAAC,CAAA;QAEH,iEAAiE;QACjE,IAAI,CAAC,sBAAsB,EAAE,CAAA;QAC7B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAA;QAEvB,sCAAsC;QACtC,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,YAAY,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;YAC1C,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAA;QACrC,CAAC;QAED,qCAAqC;QACrC,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC,GAAG,EAAE;YAC7C,IAAI,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAA;QAC9C,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAA;IAC9B,CAAC;IAED;;;;;;OAMG;IACK,8BAA8B,CAAC,OAAgB;QACrD,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAA;QAEnC,qFAAqF;QACrF,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAEjD,mDAAmD;QACnD,MAAM,aAAa,GAAG,uBAAuB,CAC3C,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAA;QACD,MAAM,cAAc,GAAG,aAAa,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;QACnE,MAAM,iBAAiB,GAAG,IAAI,CAAC,0BAA0B,CAAC,cAAc,CAAC,CAAA;QAEzE,8EAA8E;QAC9E,MAAM,aAAa,GAAG,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,CAAA;QAClE,MAAM,eAAe,GAAG,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,CAAA;QAEpE,6DAA6D;QAC7D,MAAM,SAAS,GAAG,gBAAgB,CAChC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,iBAAiB,IAAI,SAAS,CACpC,CAAA;QAED,oCAAoC;QACpC,IAAI,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAA;QAE1C,IAAI,OAAO,EAAE,CAAC;YACZ,qDAAqD;YACrD,cAAc,GAAG,SAAS,CAAC,UAAU,CAAA;QACvC,CAAC;aAAM,IAAI,aAAa,IAAI,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzE,+DAA+D;YAC/D,cAAc,GAAG,SAAS,CAAC,UAAU,CAAA;QACvC,CAAC;aAAM,IACL,eAAe;YACf,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAC5C,CAAC;YACD,kFAAkF;YAClF,cAAc,GAAG,SAAS,CAAC,UAAU,CAAA;QACvC,CAAC;QACD,oEAAoE;QAEpE,6CAA6C;QAC7C,sFAAsF;QACtF,IAAI,cAAc,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC7C,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAA;YACtC,wDAAwD;YACxD,IAAI,CAAC,yBAAyB,EAAE,CAAA;YAChC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAA,CAAC,sCAAsC;QACvF,CAAC;QAED,+CAA+C;QAC/C,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE;YAClC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC;SAClD,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACK,0BAA0B,CAAC,OAA2B;QAC5D,OAAO,CACL,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAC3D,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAC3D,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAC5D,CAAA;IACH,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,MAAkB;QACvC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACxB,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAA6B;YAC/C,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAA6B;SAClD,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;OAIG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAClC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAA6B;YAC/C,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAA6B;SAClD,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,KAAgB;QAC3B,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CACb,gDAAgD,eAAe,SAAS,CACzE,CAAA;QACH,CAAC;QAED,MAAM,SAAS,GAAG;YAChB,GAAG,IAAI,CAAC,WAAW;YACnB;gBACE,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAA6B;gBACnD,MAAM,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAA6B;aACtD;SACF,CAAA;QAED,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,KAAa;QAC3B,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CACb,6BAA6B,KAAK,UAAU,IAAI,CAAC,WAAW,CAAC,MAAM,UAAU,CAC9E,CAAA;QACH,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAA;QAChE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAED;;OAEG;IACH,eAAe;QACb,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;IACxB,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAA;IAC/B,CAAC;IAED;;OAEG;IACH,mBAAmB;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAA;IAC9B,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAA;IACvC,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,SAAS,CAAC,UAAkB;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAA;QAChD,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC;YAC9C,MAAM,IAAI,KAAK,CACb,cAAc,UAAU,qBAAqB,SAAS,GAAG,CAAC,GAAG,CAC9D,CAAA;QACH,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAA;QAClC,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IAC5C,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO;YACL,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC;YAChC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC;SACjC,CAAA;IACH,CAAC;IAED,+DAA+D;IAC/D,kBAAkB;IAClB,+DAA+D;IAE/D;;;;;;;;;;OAUG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,aAAa,EAAE,KAAK,IAAI,CAAC,CAAA;IACvC,CAAC;IAED;;;OAGG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,KAAa;QACxB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO,CAAC,CAAA;QACjC,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAA;IACpE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,KAAK,CAAC,YAAY,CAAC,KAAa;QAC9B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CACb,yBAAyB,KAAK,iCAAiC,CAChE,CAAA;YACH,CAAC;YACD,OAAM;QACR,CAAC;QAED,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,cAAc,KAAK,qBAAqB,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,CACpE,CAAA;QACH,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAA;QACrC,IAAI,KAAK,KAAK,aAAa;YAAE,OAAM;QAEnC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAA;QAEvB,gCAAgC;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC9C,IAAI,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3D,iCAAiC;YACjC,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC1D,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC3B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,EAAoB,CAAA;YAC/D,IAAI,CAAC,qBAAqB,CACxB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAC1C,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,KAAK,CACb,CAAA;YACD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;YAC3B,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAE5B,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE;gBAC5B,KAAK;gBACL,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;gBACnC,aAAa;gBACb,MAAM,EAAE,IAAI;aACb,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,uDAAuD;YACvD,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;YAE1C,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE;gBAC5B,KAAK;gBACL,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;gBACnC,aAAa;gBACb,MAAM,EAAE,KAAK;aACd,CAAC,CAAA;QACJ,CAAC;QAED,8CAA8C;QAC9C,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;IACrC,CAAC;IAED;;;;;;OAMG;IACK,yBAAyB;QAC/B,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAA;QAC5B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;QAC7B,mCAAmC;QACnC,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAClC,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAA;YACrC,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAA;QACtC,CAAC;QACD,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAA;IACtC,CAAC;IAED;;;;;;;;OAQG;IACK,uBAAuB,CAAC,WAAmB;QACjD,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,kBAAkB,IAAI,CAAC;YAAE,OAAM;QAC/D,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAM;QAEnC,sCAAsC;QACtC,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAClC,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAA;QACvC,CAAC;QACD,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QAC7C,IAAI,CAAC,wBAAwB,GAAG,eAAe,CAAA;QAE/C,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAA;QACrD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAErD,+BAA+B;QAC/B,MAAM,OAAO,GAAa,EAAE,CAAA;QAC5B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,kBAAkB,EAAE,KAAK,EAAE,EAAE,CAAC;YAC9D,MAAM,MAAM,GAAG,WAAW,GAAG,KAAK,CAAA;YAClC,MAAM,KAAK,GAAG,WAAW,GAAG,KAAK,CAAA;YACjC,IAAI,MAAM,IAAI,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACrC,IAAI,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK;gBAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC3D,CAAC;QAED,kDAAkD;QAClD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAC5B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,CACvE,CAAA;QAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAEhC,MAAM,WAAW,GAAgB;YAC/B,KAAK,EAAE,MAAM,CAAC,iBAAiB;YAC/B,GAAG,EAAE,MAAM,CAAC,eAAe;SAC5B,CAAA;QAED,8BAA8B;QAC9B,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;YAC9B,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO;gBAAE,MAAK;YAEzC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YAEzC,KAAK,IAAI,CAAC,SAAS;iBAChB,WAAW,CACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,aAAa,OAAO,EAAE,EACtB,OAAO,CACR;iBACA,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO;oBAAE,OAAM;gBAE1C,MAAM,KAAK,GAA6B;oBACtC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBACvD,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBACvD,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;iBACxD,CAAA;gBAED,wDAAwD;gBACxD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE;oBAChC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAgB;oBACvC,KAAK;oBACL,UAAU;oBACV,MAAM;iBACP,CAAC,CAAA;YACJ,CAAC,CAAC;iBACD,KAAK,CAAC,GAAG,EAAE;gBACV,oDAAoD;YACtD,CAAC,CAAC;iBACD,OAAO,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAC9C,CAAC,CAAC,CAAA;QACN,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,4BAA4B;IAC5B,+DAA+D;IAE/D;;;;;;;;OAQG;IACH,gBAAgB,CAAC,OAAgB;QAC/B,IAAI,OAAO,KAAK,IAAI,CAAC,qBAAqB;YAAE,OAAM;QAClD,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAA;QAEpC,IAAI,OAAO,EAAE,CAAC;YACZ,2CAA2C;YAC3C,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAChD,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YACrC,CAAC;YACD,sDAAsD;YACtD,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACjC,CAAC;aAAM,CAAC;YACN,6CAA6C;YAC7C,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAChD,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YACvC,CAAC;YACD,mDAAmD;YACnD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;YAC7B,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAA;YACnC,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAChC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;gBACzC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAA;YACpC,CAAC;YACD,mDAAmD;YACnD,MAAM,SAAS,GAAG,gBAAgB,CAChC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,CACnB,CAAA;YACD,IAAI,SAAS,CAAC,UAAU,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACnD,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC,UAAU,CAAA;gBAC5C,wDAAwD;gBACxD,IAAI,CAAC,yBAAyB,EAAE,CAAA;gBAChC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;YAC9C,CAAC;YACD,gDAAgD;YAChD,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,qBAAqB,CAAA;IACnC,CAAC;IAED;;;OAGG;IACH,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO,IAAI,CAAA;QACxC,OAAO;YACL,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAA6B;YAChE,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAA6B;SACjE,CAAA;IACH,CAAC;IAED;;;;OAIG;IACK,mBAAmB,CAAC,EAAU,EAAE,KAA0B;QAChE,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,KAAK,CAAC,uBAAuB,GAAG,UAAU,CAAA;QAC1C,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;QAEhC,wCAAwC;QACxC,EAAE,CAAC,gBAAgB,CACjB,SAAS,EACT,GAAG,EAAE;YACH,IAAI,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAAA;QACxC,CAAC,EACD,EAAE,MAAM,EAAE,CACX,CAAA;QAED,+BAA+B;QAC/B,EAAE,CAAC,gBAAgB,CACjB,cAAc,EACd,GAAG,EAAE;YACH,IAAI,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAAA;QACxC,CAAC,EACD,EAAE,MAAM,EAAE,CACX,CAAA;QAED,yCAAyC;QACzC,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;YACd,EAAE,CAAC,MAAM,CAAC,gBAAgB,CACxB,OAAO,EACP,GAAG,EAAE;gBACH,IAAI,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAAA;YACxC,CAAC,EACD,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAC1B,CAAA;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,GAAW,EAAE,KAA0B;QACnE,IAAI,KAAK,CAAC,uBAAuB,EAAE,CAAC;YAClC,KAAK,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAA;YACrC,KAAK,CAAC,uBAAuB,GAAG,SAAS,CAAA;QAC3C,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,mBAAmB;IACnB,+DAA+D;IAE/D;;;;;;;;;;OAUG;IACK,iBAAiB,CAAC,EAAU,EAAE,KAA0B;QAC9D,IAAI,CAAC,EAAE,CAAC,MAAM;YAAE,OAAM;QAEtB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,KAAK,CAAC,2BAA2B,GAAG,UAAU,CAAA;QAE9C,EAAE,CAAC,MAAM,CAAC,gBAAgB,CACxB,OAAO,EACP,CAAC,CAAa,EAAE,EAAE;YAChB,0DAA0D;YAC1D,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAA;YACxB,IAAI,CAAC,MAAM;gBAAE,OAAM;YACnB,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE,CAAA;YAC3C,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAA;YAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAA;YACvC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;YAEtC,mDAAmD;YACnD,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;gBAAE,OAAM;YAErC,6DAA6D;YAC7D,uDAAuD;YACvD,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAA;YAC7C,MAAM,SAAS,GAAG,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAA;YAChD,IACE,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBACrB,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS;gBACrC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EACzB,CAAC;gBACD,OAAM;YACR,CAAC;YAED,iDAAiD;YACjD,8DAA8D;YAC9D,iEAAiE;YACjE,uDAAuD;YACvD,CAAC,CAAC,wBAAwB,EAAE,CAAA;YAC5B,CAAC,CAAC,cAAc,EAAE,CAAA;YAElB,0DAA0D;YAC1D,kEAAkE;YAClE,sEAAsE;YACtE,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACrC,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAA;YAC3C,IAAI,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YACjD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,GAAG,CAAA;YACzC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;YAEvE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;YAEpB,kEAAkE;YAClE,kEAAkE;YAClE,4BAA4B;YAC5B,IAAI,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAAA;QACxC,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAC7C,CAAA;IACH,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,GAAW,EAAE,KAA0B;QACjE,IAAI,KAAK,CAAC,2BAA2B,EAAE,CAAC;YACtC,KAAK,CAAC,2BAA2B,CAAC,KAAK,EAAE,CAAA;YACzC,KAAK,CAAC,2BAA2B,GAAG,SAAS,CAAA;QAC/C,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,6BAA6B,CAAC,GAAW;QAC/C,IAAI,CAAC,IAAI,CAAC,qBAAqB;YAAE,OAAM;QAEvC,4DAA4D;QAC5D,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;QAC3C,CAAC;QACD,IAAI,CAAC,sBAAsB,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAA;YAClC,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACjC,CAAC,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAAA;IACzC,CAAC;IAED;;;OAGG;IACK,wBAAwB;QAC9B,IAAI,CAAC,IAAI,CAAC,qBAAqB;YAAE,OAAM;QAEvC,wCAAwC;QACxC,kEAAkE;QAClE,+DAA+D;QAC/D,IAAI,WAAW,GAAwB,IAAI,CAAA;QAC3C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAsC,CAAA;QAEnE,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAChD,IACE,KAAK,CAAC,gBAAgB,KAAK,UAAU,CAAC,MAAM;gBAC5C,KAAK,CAAC,gBAAgB,KAAK,UAAU,CAAC,WAAW,EACjD,CAAC;gBACD,oDAAoD;gBACpD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;gBAChE,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,WAAW,GAAG,QAAQ,CAAA;gBACxB,CAAC;qBAAM,CAAC;oBACN,6BAA6B;oBAC7B,WAAW,GAAG;wBACZ,GAAG,EAAE;4BACH,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;4BAC7C,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;4BAC7C,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;yBAC9C;wBACD,GAAG,EAAE;4BACH,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;4BAC7C,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;4BAC7C,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;yBAC9C;qBACF,CAAA;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACzD,uCAAuC;gBACvC,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAiC,CAAA;gBACzD,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;gBAClD,MAAM,SAAS,GAAG,SAAS,EAAE,kBAAkB,IAAI,GAAG,CAAA;gBACtD,MAAM,QAAQ,GAAG,uBAAuB,CACtC,EAAE,EACF,KAAK,CAAC,gBAAgB,EACtB,IAAI,CAAC,aAAa,EAClB,SAAS,CACV,CAAA;gBACD,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;YACxC,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,MAAM,eAAe,GACnB,CAAC,WAAW,KAAK,CAAC,IAAI,CAAC,iBAAiB;YACxC,CAAC,WAAW;gBACV,IAAI,CAAC,iBAAiB;gBACtB,CAAC,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAA;QAE5D,mCAAmC;QACnC,IAAI,iBAAiB,GAAG,KAAK,CAAA;QAC7B,KAAK,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,aAAa,EAAE,CAAC;YACnD,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAA;YACpE,IACE,CAAC,SAAS,KAAK,CAAC,SAAS;gBACzB,CAAC,SAAS,IAAI,SAAS,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,EACpE,CAAC;gBACD,iBAAiB,GAAG,IAAI,CAAA;gBACxB,MAAK;YACP,CAAC;QACH,CAAC;QAED,IAAI,CAAC,eAAe,IAAI,CAAC,iBAAiB;YAAE,OAAM;QAElD,uBAAuB;QACvB,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAA;QACpC,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAChD,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QACpD,CAAC;QAED,gEAAgE;QAChE,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,SAAS,GAAG,gBAAgB,CAChC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,iBAAiB,IAAI,SAAS,CACpC,CAAA;YAED,IAAI,SAAS,CAAC,UAAU,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACnD,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC,UAAU,CAAA;gBAC5C,wDAAwD;gBACxD,IAAI,CAAC,yBAAyB,EAAE,CAAA;gBAChC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,IAAI,iBAAiB,EAAE,CAAC;YACtB,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,OAAwB;QAC9C,KAAK,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvD,4EAA4E;YAC5E,KAAK,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxD,IACE,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,gBAAgB,CAAC;oBACpD,aAAa,CAAC,gBAAkC,KAAK,SAAS,EAC/D,CAAC;oBACD,MAAM,YAAY,GAAG,EAAE,CAAC,KAAK,EAAE,YAAY,CAAA;oBAC3C,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;wBAAE,SAAQ;oBACtD,IAAI,CAAC;wBACH,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC;4BACpB,YAAY,CAAC,CAAC,CAAC;4BACf,YAAY,CAAC,CAAC,CAAC;4BACf,YAAY,CAAC,CAAC,CAAC;yBAChB,CAAC,CAAA;wBACF,+DAA+D;wBAC/D,8DAA8D;wBAC9D,iEAAiE;wBACjE,MAAM,EAAE,GAAG,SAAS,CAAC,kBAAkB,CAAA;wBACvC,MAAM,UAAU,GAA6B;4BAC3C,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;4BACV,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;4BACV,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;yBACX,CAAA;wBACD,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;oBAC3D,CAAC;oBAAC,MAAM,CAAC;wBACP,gCAAgC;oBAClC,CAAC;oBACD,MAAK;gBACP,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,WAAW;QACf,gDAAgD;QAChD,MAAM,OAAO,GAAG,EAAE,CAAA;QAElB,OAAO,IAAI,EAAE,CAAC;YACZ,6BAA6B;YAC7B,4DAA4D;YAC5D,iDAAiD;YAEjD,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;gBAC1C,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAC5B,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,CAClD,CAAA;gBACD,SAAQ;YACV,CAAC;YAED,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;gBACzC,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAC5B,UAAU,CAAC,CAAC,EAAE,cAAc,CAAC,oBAAoB,GAAG,OAAO,CAAC,CAC7D,CAAA;gBACD,SAAQ;YACV,CAAC;YAED,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACtC,+CAA+C;gBAC/C,yBAAyB;gBACzB,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAA;gBAC5D,SAAQ;YACV,CAAC;YAED,yBAAyB;YAEzB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;gBAC5D,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;gBACtD,SAAQ;YACV,CAAC;YAED,IAAI,QAAQ,GAAG,KAAK,CAAA;YACpB,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;gBACnD,IAAI,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;oBAC5D,QAAQ,GAAG,IAAI,CAAA;oBACf,MAAK;gBACP,CAAC;YACH,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;gBACtD,SAAQ;YACV,CAAC;YAED,8BAA8B;YAE9B,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAA;YAE7B,8BAA8B;YAC9B,iEAAiE;YACjE,kDAAkD;YAElD,MAAM,SAAS,GACb,IAAI,CAAC,SAAS;gBACd,IAAI,CAAC,uBAAuB,KAAK,IAAI;gBACrC,IAAI,CAAC,uBAAuB,KAAK,IAAI;gBACrC,IAAI,CAAC,sBAAsB,KAAK,IAAI;gBACpC,IAAI,CAAC,mBAAmB,CAAC,IAAI,GAAG,CAAC;gBACjC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CACzC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,aAAa,KAAK,IAAI,CAC/C,CAAA;YAEH,IAAI,CAAC,SAAS;gBAAE,MAAK;QACvB,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,4CAA4C;IAC5C,+DAA+D;IAE/D;;;;;;;;;;;;;OAaG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED;;;;;;;OAOG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,gBAAgB,CAAC,KAAa;QAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAChD,CAAC;QACD,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CACb,0BAA0B,KAAK,UAAU,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,YAAY,CACjF,CAAA;QACH,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,KAAK,CAAA;QAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;QAC5B,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACnC,CAAC;IAED,+DAA+D;IAC/D,oCAAoC;IACpC,+DAA+D;IAE/D;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,EAAU;QACrB,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAM,CAAC,mBAAmB;QAE7D,MAAM,oBAAoB,GAAG,IAAI,eAAe,EAAE,CAAA;QAClD,MAAM,KAAK,GAAwB;YACjC,EAAE;YACF,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC3C,oBAAoB;SACrB,CAAA;QAED,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAA;QAE1C,iEAAiE;QACjE,EAAE,CAAC,gBAAgB,CACjB,iBAAiB,EACjB,CAAC,CAAC,EAAE,EAAE;YACJ,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACrD,CAAC,EACD,EAAE,MAAM,EAAE,CACX,CAAA;QAED,8CAA8C;QAC9C,EAAE,CAAC,gBAAgB,CACjB,gBAAgB,EAChB,CAAC,CAAC,EAAE,EAAE;YACJ,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;QAC1C,CAAC,EACD,EAAE,MAAM,EAAE,CACX,CAAA;QAED,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QAEpC,iEAAiE;QACjE,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QACrC,CAAC;QAED,wDAAwD;QACxD,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QAEjC,kEAAkE;QAClE,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAA;QACxC,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,SAA0B,CAAC,CAAA;QAC3D,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,YAAY,CAAC,EAAU;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAM;QAElB,mCAAmC;QACnC,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QAErC,0BAA0B;QAC1B,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QAEnC,kEAAkE;QAClE,KAAK,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAA;QAElC,mEAAmE;QACnE,IAAI,EAAE,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACzD,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,CAAA;YACtC,IAAI,CAAC,yBAAyB,GAAG,SAAS,CAAA;QAC5C,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAClC,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,SAAwB;QACzC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACzC,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAA;IACjD,CAAC;IAED,iCAAiC;IAEjC;;OAEG;IACK,gBAAgB,CAAC,EAAU;QACjC,wEAAwE;QACxE,2EAA2E;QAC3E,uDAAuD;QACvD,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;QAC7B,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,oBAAoB;QACpB,OAAO,UAAU,CAAC,MAAM,CAAA;IAC1B,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,EAAc;QACrC,OAAO,CACL,EAAE,KAAK,UAAU,CAAC,KAAK;YACvB,EAAE,KAAK,UAAU,CAAC,OAAO;YACzB,EAAE,KAAK,UAAU,CAAC,QAAQ,CAC3B,CAAA;IACH,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACK,kBAAkB,CAAC,SAAwB;QACjD,iEAAiE;QACjE,IAAI,SAAoB,CAAA;QACxB,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,UAAU,CAAC,KAAK;gBACnB,SAAS,GAAG,CAAC,CAAA,CAAC,MAAM;gBACpB,MAAK;YACP,KAAK,UAAU,CAAC,OAAO;gBACrB,SAAS,GAAG,CAAC,CAAA,CAAC,MAAM;gBACpB,MAAK;YACP,KAAK,UAAU,CAAC,QAAQ;gBACtB,SAAS,GAAG,CAAC,CAAA,CAAC,MAAM;gBACpB,MAAK;QACT,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAA;QACjE,MAAM,OAAO,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAA;QAEnD,0CAA0C;QAC1C,8DAA8D;QAC9D,IAAI,OAAO,CAAC,CAAC,CAAC,WAAW,KAAK,SAAS;YAAE,OAAO,CAAC,CAAA;QACjD,IAAI,OAAO,CAAC,CAAC,CAAC,WAAW,KAAK,SAAS;YAAE,OAAO,CAAC,CAAA;QACjD,OAAO,CAAC,CAAA;IACV,CAAC;IAED;;OAEG;IACK,sBAAsB,CAAC,EAAU,EAAE,YAAwB;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAM;QAElB,MAAM,YAAY,GAAG,KAAK,CAAC,gBAAgB,CAAA;QAC3C,KAAK,CAAC,gBAAgB,GAAG,YAAY,CAAA;QAErC,IAAI,YAAY,KAAK,YAAY;YAAE,OAAM;QAEzC,IAAI,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,CAAC;YACxC,wDAAwD;YACxD,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,YAA6B,CAAC,CAAA;QAC9D,CAAC;aAAM,CAAC;YACN,8EAA8E;YAC9E,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,IAAe,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,qBAAqB,CAAC,EAAU,EAAE,SAAkB;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC3C,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC;YAAE,OAAM;QAEpE,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAiC,CAAA;QACzD,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAClD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,GAAG,CAAC;YAAE,OAAM,CAAC,iCAAiC;QAEnF,sEAAsE;QACtE,MAAM,YAAY,GAAG,EAAE,CAAC,KAAK,EAAE,YAAY,CAAA;QAC3C,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAEpD,IAAI,UAAoC,CAAA;QACxC,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1E,mEAAmE;YACnE,gEAAgE;YAChE,MAAM,EAAE,GAAG,SAAS,CAAC,kBAAkB,CAAA;YACvC,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAA;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,OAAM,CAAC,gCAAgC;QACzC,CAAC;QAED,iEAAiE;QACjE,sEAAsE;QACtE,uDAAuD;QACvD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAC/D,MAAM,cAAc,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAA;QAC3D,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;QAEjE,4BAA4B;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAA;QACnD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;QAErC,2DAA2D;QAC3D,IAAI,QAAQ,GAAG,SAAS,CAAC,SAAS,IAAI,QAAQ,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACpE,+CAA+C;YAC/C,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;QAClD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB,CAC1B,SAAwB,EACxB,UAAoC,EACpC,UAA2B,cAAc;QAEzC,+CAA+C;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACxD,IAAI,QAAQ;YAAE,YAAY,CAAC,QAAQ,CAAC,CAAA;QAEpC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YAC1C,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;QACrD,CAAC,EAAE,GAAG,CAAC,CAAA,CAAC,uEAAuE;QAE/E,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAClD,CAAC;IAED;;;OAGG;IACK,oBAAoB,CAAC,EAAU,EAAE,SAAwB;QAC/D,IAAI,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAEhD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,gCAAgC;YAChC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;YAC7C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAC7C,CAAC;QAED,gEAAgE;QAChE,mEAAmE;QACnE,uEAAuE;QACvE,kEAAkE;QAClE,eAAe;QACf,IAAI,UAAoC,CAAA;QACxC,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,EAAE,CAAC,KAAK,EAAE,YAAY,CAAA;YAC3C,IAAI,YAAY,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC;oBACpB,YAAY,CAAC,CAAC,CAAC;oBACf,YAAY,CAAC,CAAC,CAAC;oBACf,YAAY,CAAC,CAAC,CAAC;iBAChB,CAAC,CAAA;gBACF,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YACpC,CAAC;iBAAM,CAAC;gBACN,6BAA6B;gBAC7B,UAAU,GAAG;oBACX,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC3D,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC3D,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;iBAC5D,CAAA;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8CAA8C;YAC9C,UAAU,GAAG;gBACX,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC3D,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC3D,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;aAC5D,CAAA;QACH,CAAC;QAED,yEAAyE;QACzE,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;QAE/C,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAClE,OAAO,CAAC,KAAK,CACX,mCAAmC,UAAU,CAAC,SAAS,CAAC,GAAG,EAC3D,GAAG,CACJ,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,SAAwB;QAChD,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,IAAI,CAAC,CAAA;QAC7D,MAAM,aAAa,GAAG,IAAI,aAAa,CACrC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,KAAK,EACV,kBAAkB,CACnB,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;QAE7B,sEAAsE;QACtE,MAAM,GAAG,GAAG,IAAI,MAAM,EAAE,CAAA;QACxB,OAAO,CAAC,GAAG,GAAG,GAAG,CAAA;QACjB,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QACnC,IAAI,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACtD,GAAG,CAAC,YAAY,GAAG,OAAO,CAAA;YAC1B,GAAG,CAAC,eAAe,GAAG,OAAO,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACjE,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC/C,GAAG,CAAC,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACxD,CAAC;QACD,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QACtC,GAAG,CAAC,MAAM,GAAG;YACX,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACZ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACZ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACZ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACb,CAAA;QACD,GAAG,CAAC,UAAU,GAAG,CAAC,CAAA;QAClB,OAAO,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,UAAU,KAAK,UAAU,CAAC,SAAS,CAAC,GAAG,CAAA;QACtE,OAAO,CAAC,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAmB,CAAA;QAC/D,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,MAAM,CAAA;QAC9C,CAAC;QACD,OAAO,CAAC,QAAQ,GAAG,GAAG,CAAA;QAEtB,kDAAkD;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAA;QACnD,MAAM,SAAS,GAAG,kBAAkB,CAClC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,QAAQ,CACT,CAAA;QAED,OAAO;YACL,OAAO;YACP,aAAa;YACb,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,kBAAkB;YAClE,gBAAgB,EAAE,SAAS,CAAC,UAAU;YACtC,SAAS,EAAE,CAAC,CAAC;YACb,OAAO,EAAE,CAAC,CAAC;YACX,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,kBAAkB,EAAE,GAAG,EAAE,6BAA6B;YACtD,aAAa,EAAE,IAAI;SACpB,CAAA;IACH,CAAC;IAED;;;OAGG;IACK,mBAAmB,CAAC,EAAU,EAAE,YAAqB;QAC3D,2EAA2E;QAC3E,MAAM,UAAU,GAAG,IAAI,GAAG,CAAU,CAAC,IAAe,CAAC,CAAC,CAAA;QACtD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;YAC9C,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC9B,CAAC;QAED,yEAAyE;QACzE,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;YACtB,CAAC;YAAC,MAAM,CAAC;gBACP,qEAAqE;YACvE,CAAC;QACH,CAAC;QAED,+CAA+C;QAC/C,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC;gBACH,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;YAC5B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAA;gBACzD,OAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,cAAc,EAAE,CAAA;YACnB,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAA;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,mCAAmC;QACrC,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,KAAK,CAAC,SAAS,CACrB,SAAwB,EACxB,UAAoC,EACpC,OAAwB;QAExB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAClD,IAAI,CAAC,SAAS;YAAE,OAAM;QAEtB,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;YACxB,6EAA6E;YAC7E,SAAS,CAAC,aAAa,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAA;YACjD,6DAA6D;YAC7D,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YAC5D,IAAI,UAAU;gBAAE,UAAU,CAAC,KAAK,EAAE,CAAA;YAClC,OAAM;QACR,CAAC;QAED,SAAS,CAAC,SAAS,GAAG,IAAI,CAAA;QAC1B,SAAS,CAAC,aAAa,GAAG,IAAI,CAAA;QAE9B,sEAAsE;QACtE,wEAAwE;QACxE,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QAC7C,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAA;QAE1D,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE;YAClC,SAAS;YACT,UAAU,EAAE,SAAS,CAAC,gBAAgB;YACtC,OAAO;SACR,CAAC,CAAA;QAEF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAA;YAEnD,kFAAkF;YAClF,MAAM,kBAAkB,GACtB,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,SAAS,CAAA;YACzD,MAAM,SAAS,GAAG,kBAAkB,CAClC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,QAAQ,EACR,kBAAkB,CACnB,CAAA;YACD,SAAS,CAAC,gBAAgB,GAAG,SAAS,CAAC,UAAU,CAAA;YAEjD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAA;YAChD,MAAM,WAAW,GAAG,SAAS,GAAG,CAAC,CAAA;YAEjC,oEAAoE;YACpE,mEAAmE;YACnE,qEAAqE;YACrE,gEAAgE;YAChE,yBAAyB;YACzB,MAAM,eAAe,GAAG,OAAO,KAAK,iBAAiB,CAAA;YACrD,MAAM,UAAU,GAAG,eAAe;gBAChC,CAAC,CAAC,SAAS,CAAC,gBAAgB;gBAC5B,CAAC,CAAC,WAAW,CAAA;YAEf,KACE,IAAI,KAAK,GAAG,UAAU,EACtB,KAAK,IAAI,SAAS,CAAC,gBAAgB,EACnC,KAAK,EAAE,EACP,CAAC;gBACD,4DAA4D;gBAC5D,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO;oBAAE,MAAK;gBAEzC,MAAM,IAAI,CAAC,gBAAgB,CACzB,SAAS,EACT,SAAS,EACT,UAAU,EACV,KAAK,EACL,QAAQ,EACR,OAAO,CACR,CAAA;gBAED,8CAA8C;gBAC9C,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO;oBAAE,MAAK;gBAEzC,SAAS,CAAC,UAAU,GAAG,KAAK,CAAA;gBAE5B,uEAAuE;gBACvE,wDAAwD;gBACxD,IAAI,KAAK,GAAG,SAAS,CAAC,gBAAgB,EAAE,CAAC;oBACvC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAClC,qBAAqB,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CACvC,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,SAAS,CAAC,SAAS,GAAG,KAAK,CAAA;YAE3B,IAAI,CAAC,UAAU,CAAC,qBAAqB,EAAE;gBACrC,SAAS;gBACT,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,OAAO,EAAE,SAAS,CAAC,OAAO;gBAC1B,OAAO;aACR,CAAC,CAAA;YAEF,mEAAmE;YACnE,qEAAqE;YACrE,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,wBAAwB,CAAC,SAAwB;QACvD,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAClD,IAAI,CAAC,SAAS;YAAE,OAAM;QAEtB,MAAM,OAAO,GAAG,SAAS,CAAC,aAAa,CAAA;QACvC,IAAI,OAAO,EAAE,CAAC;YACZ,SAAS,CAAC,aAAa,GAAG,IAAI,CAAA;YAC9B,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,gBAAgB,CAC5B,SAA0B,EAC1B,SAAwB,EACxB,UAAoC,EACpC,UAAkB,EAClB,QAAwB,EACxB,QAAyB;QAEzB,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QACrD,MAAM,UAAU,GAAG,aAAa,CAAC,SAAS,CAAC,CAAA;QAC3C,MAAM,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;QAE7C,0DAA0D;QAC1D,sEAAsE;QACtE,2DAA2D;QAC3D,MAAM,cAAc,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAA;QAC3D,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;QACjE,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;QAEtC,qDAAqD;QACrD,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;QACtC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC,CAAA;QAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,SAAS,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAA;QAEtE,8DAA8D;QAC9D,yEAAyE;QACzE,yEAAyE;QACzE,sEAAsE;QACtE,yEAAyE;QACzE,MAAM,WAAW,GAAG,uBAAuB,CACzC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,SAAS,CACV,CAAA;QACD,MAAM,aAAa,GAAG,aAAa,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;QAE3D,oDAAoD;QACpD,MAAM,UAAU,GAA6B;YAC3C,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAClC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAClC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;SACnC,CAAA;QACD,MAAM,QAAQ,GAA6B;YACzC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC;YAChC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC;YAChC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC;SACjC,CAAA;QACD,UAAU,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAA;QAChC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAA;QAE5B,MAAM,YAAY,GAA6B;YAC7C,QAAQ,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;YAC3B,QAAQ,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;YAC3B,QAAQ,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;SAC5B,CAAA;QAED,iBAAiB;QACjB,MAAM,WAAW,GAAgB,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAA;QACrE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAC7C,SAAS,EACT,UAAU,EACV,WAAW,EACX,QAAQ,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,EAAE,EAC7C,IAAI,CAAC,UAAU,CAChB,CAAA;QAED,8BAA8B;QAC9B,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QAC/D,MAAM,SAAS,GAAG,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;QAE9D,IAAI,SAAS,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACnC,sEAAsE;YACtE,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CACrC,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,YAAY,CAAC,UAAU,CAC7B,CAAA;YACD,MAAM,UAAU,GAAG,gBAAgB,CACjC,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,YAAY,CAAC,UAAU,EAC5B,OAAO,CACR,CAAA;YACD,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,mCAAmC;YACnC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC;QAED,6DAA6D;QAC7D,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,IAAI,CAAC,CAAA;YACrD,IAAI,CAAC,gBAAgB,CACnB,UAAU,EACV,YAAY,CAAC,CAAC,CAAC,EAAE,sBAAsB;YACvC,YAAY,CAAC,CAAC,CAAC,EAAE,uBAAuB;YACxC,UAAU,GAAG,UAAU,CAAC,iBAAiB,CAC1C,CAAA;QACH,CAAC;QAED,SAAS,CAAC,OAAO,CAAC,GAAG;YACnB,SAAS,CAAC,aAAa,CAAC,aAAa,EAAoB,CAAA;QAE3D,gCAAgC;QAChC,SAAS,CAAC,SAAS,GAAG,SAAS,CAAA;QAC/B,SAAS,CAAC,OAAO,GAAG,OAAO,CAAA;QAE3B,iDAAiD;QACjD,IAAI,CAAC,iBAAiB,CACpB,SAAS,CAAC,OAAO,EACjB,SAAS,EACT,UAAU,EACV,QAAQ,EACR,YAAY,CACb,CAAA;QAED,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,4DAA4D;YAC5D,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAC1D,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACrC,+CAA+C;YAC/C,yEAAyE;YACzE,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QACjD,CAAC;QAED,2DAA2D;QAC3D,SAAS,CAAC,OAAO,CAAC,UAAU,GAAG,SAAS,CAAA;QAExC,sEAAsE;QACtE,oEAAoE;QACpE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAA;QAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,EACvB,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,EACvB,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CACxB,CAAA;QACD,MAAM,kBAAkB,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,CAAA;QACtE,SAAS,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;QACjD,MAAM,YAAY,GAA6B;YAC7C,UAAU,CAAC,CAAC,CAAC,GAAG,kBAAkB;YAClC,UAAU,CAAC,CAAC,CAAC,GAAG,kBAAkB;YAClC,UAAU,CAAC,CAAC,CAAC,GAAG,kBAAkB;SACnC,CAAA;QAED,iDAAiD;QACjD,KAAK,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAChE,IACE,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,gBAAgB,CAAC;gBACpD,aAAa,CAAC,gBAAkC,KAAK,SAAS,EAC/D,CAAC;gBACD,qCAAqC;gBACrC,IAAI,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnD,UAAU,CAAC,cAAc,EAAE,CAAA;oBAE3B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;wBACvB,mEAAmE;wBACnE,wEAAwE;wBACxE,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;oBAChD,CAAC;oBAED,gEAAgE;oBAChE,gEAAgE;oBAChE,wEAAwE;oBACxE,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;oBAC7C,mEAAmE;oBACnE,sEAAsE;oBACtE,iEAAiE;oBACjE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC3C,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC3C,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC3C,UAAU,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAA;oBACpC,UAAU,CAAC,SAAS,EAAE,CAAA;gBACxB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,iBAAiB,CACvB,OAAgB,EAChB,SAAoB,EACpB,UAAoC,EACpC,SAAmC,EACnC,YAAsC;QAEtC,IAAI,CAAC,OAAO,CAAC,GAAG;YAAE,OAAM;QAExB,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAA;QAC7B,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA;QAClC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA;QAClC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA;QAElC,uEAAuE;QACvE,sEAAsE;QACtE,qEAAqE;QACrE,0EAA0E;QAC1E,8DAA8D;QAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;QACzC,MAAM,kBAAkB,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,CAAA;QACtE,MAAM,GAAG,GAAG,EAAE,GAAG,kBAAkB,CAAA;QACnC,MAAM,GAAG,GAAG,EAAE,GAAG,kBAAkB,CAAA;QACnC,MAAM,GAAG,GAAG,EAAE,GAAG,kBAAkB,CAAA;QAEnC,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QACpD,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG;YACjB,CAAC;YACD,YAAY,CAAC,CAAC,CAAC;YACf,YAAY,CAAC,CAAC,CAAC;YACf,YAAY,CAAC,CAAC,CAAC;YACf,CAAC;YACD,CAAC;YACD,CAAC;YACD,CAAC;SACF,CAAA;QAED,qEAAqE;QACrE,gEAAgE;QAChE,EAAE;QACF,wEAAwE;QACxE,wEAAwE;QACxE,0EAA0E;QAC1E,yEAAyE;QACzE,6DAA6D;QAC7D,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAA;QAEnD,qEAAqE;QACrE,oEAAoE;QACpE,wDAAwD;QACxD,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA,CAAC,mBAAmB;QACjD,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA,CAAC,mBAAmB;QACjD,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA,CAAC,mBAAmB;QACjD,wEAAwE;QACxE,MAAM,CAAC,EAAE,CAAC;YACR,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAA;QACjE,MAAM,CAAC,EAAE,CAAC;YACR,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAA;QACjE,MAAM,CAAC,EAAE,CAAC;YACR,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,CAAA;QAElE,0EAA0E;QAC1E,qEAAqE;QACrE,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACxD,yEAAyE;YACzE,MAAM,OAAO,GAAG,qBAAqB,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAA;YACjE,wEAAwE;YACxE,MAAM,WAAW,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAA;YAC7C,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAC5C,CAAC;QAED,yEAAyE;QACzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,MAAM,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAA;QACjC,CAAC;QACD,qBAAqB;QAErB,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;QACxC,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG;YACnB,KAAK,CAAC,MAAM;YACZ,KAAK,CAAC,MAAM;YACZ,KAAK,CAAC,MAAM;YACZ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACb,CAAA;QAED,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,CAAA;QAC1B,OAAO,CAAC,YAAY,EAAE,CAAA;IACxB,CAAC;IAED;;OAEG;IACK,uBAAuB,CAAC,OAAgB;QAC9C,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM;YAAE,OAAM;QAE1D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAChC,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;QAClD,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAA;QAE9B,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,CAAA;YACzC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,CAAA;YACvC,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,MAAM,CAAA;YACtD,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,MAAM,CAAA;QACxD,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACK,sBAAsB,CAAC,OAAgB;QAC7C,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACzE,OAAO,KAAK,CAAA;QACd,CAAC;QAED,IAAI,OAAO,GAAG,KAAK,CAAA;QAEnB,qEAAqE;QACrE,yEAAyE;QACzE,kEAAkE;QAClE,6BAA6B;QAC7B,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1E,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAA;YACpC,OAAO,GAAG,IAAI,CAAA;QAChB,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1E,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAA;YACpC,OAAO,GAAG,IAAI,CAAA;QAChB,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,+DAA+D;IAC/D,gDAAgD;IAChD,+DAA+D;IAE/D;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,gBAAgB,CACd,IAAO,EACP,QAAwC,EACxC,OAA4C;QAE5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAyB,EAAE,OAAO,CAAC,CAAA;IAC9E,CAAC;IAED;;;;;;OAMG;IACH,mBAAmB,CACjB,IAAO,EACP,QAAwC,EACxC,OAA4C;QAE5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,CACnC,IAAI,EACJ,QAAyB,EACzB,OAAO,CACR,CAAA;IACH,CAAC;IAED;;;OAGG;IACK,UAAU,CAChB,SAAY,EACZ,MAAiC;QAEjC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,mBAAmB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;YACxD,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,YAAY,SAAS,kBAAkB,EAAE,KAAK,CAAC,CAAA;QAC/D,CAAC;IACH,CAAC"}
|
package/package.json
CHANGED
package/src/OMEZarrNVImage.ts
CHANGED
|
@@ -181,6 +181,17 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
181
181
|
*/
|
|
182
182
|
private readonly _flipY2D: boolean
|
|
183
183
|
|
|
184
|
+
/**
|
|
185
|
+
* Whether the y-flip for 2D images should be applied in the pixel
|
|
186
|
+
* data rather than the NIfTI affine.
|
|
187
|
+
*
|
|
188
|
+
* NiiVue uses a fast Texture2D code path for RGBA 2D images that
|
|
189
|
+
* bypasses the orient shader entirely, so affine-based y-flips have
|
|
190
|
+
* no visual effect. For these images we reverse the row order in the
|
|
191
|
+
* buffer instead.
|
|
192
|
+
*/
|
|
193
|
+
private readonly _flipY2DInData: boolean
|
|
194
|
+
|
|
184
195
|
/** Full volume bounds in world space */
|
|
185
196
|
private readonly _volumeBounds: VolumeBounds
|
|
186
197
|
|
|
@@ -381,6 +392,12 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
381
392
|
this._is2D = highResImage.dims.indexOf("z") === -1
|
|
382
393
|
this._flipY2D = options.flipY2D ?? true
|
|
383
394
|
|
|
395
|
+
// NiiVue uses a Texture2D fast path for RGBA 2D images that
|
|
396
|
+
// bypasses the orient shader. Affine-based y-flips have no
|
|
397
|
+
// visual effect in that path, so we flip the pixel data instead.
|
|
398
|
+
this._flipY2DInData =
|
|
399
|
+
this._flipY2D && this._is2D && this._channelInfo !== null
|
|
400
|
+
|
|
384
401
|
// Detect time dimension from the zarr axes
|
|
385
402
|
const tDimIndex = highResImage.dims.indexOf("t")
|
|
386
403
|
if (tDimIndex !== -1) {
|
|
@@ -544,7 +561,7 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
544
561
|
]
|
|
545
562
|
placeholderAffine[mapping.x.physicalRow][0] = mapping.x.sign
|
|
546
563
|
let ySign = mapping.y.sign
|
|
547
|
-
if (this._flipY2D && this._is2D) {
|
|
564
|
+
if (this._flipY2D && this._is2D && !this._flipY2DInData) {
|
|
548
565
|
ySign = (ySign * -1) as 1 | -1
|
|
549
566
|
}
|
|
550
567
|
placeholderAffine[mapping.y.physicalRow][1] = ySign
|
|
@@ -790,6 +807,20 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
790
807
|
targetData.set(result.data)
|
|
791
808
|
}
|
|
792
809
|
|
|
810
|
+
// For RGBA 2D images, reverse the row order so the top-to-bottom
|
|
811
|
+
// pixel data matches WebGL's bottom-to-top texture convention.
|
|
812
|
+
// NiiVue's Texture2D fast path for RGBA 2D images skips the orient
|
|
813
|
+
// shader, so the affine-based y-flip has no effect on rendering.
|
|
814
|
+
if (this._flipY2DInData) {
|
|
815
|
+
const components = this._channelInfo?.components ?? 1
|
|
816
|
+
this._flipRowsInPlace(
|
|
817
|
+
targetData,
|
|
818
|
+
fetchedShape[2], // x dimension (width)
|
|
819
|
+
fetchedShape[1], // y dimension (height)
|
|
820
|
+
components * this.bufferManager.getBytesPerPixel(),
|
|
821
|
+
)
|
|
822
|
+
}
|
|
823
|
+
|
|
793
824
|
// Update this.img to point to the (possibly new) buffer
|
|
794
825
|
this.img = this.bufferManager.getTypedArray() as NVImage["img"]
|
|
795
826
|
|
|
@@ -916,7 +947,12 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
916
947
|
// top-to-bottom pixel storage order. We shift the translation so
|
|
917
948
|
// the last row maps to where the first row was, then negate the
|
|
918
949
|
// y column. This composes correctly with any orientation sign.
|
|
919
|
-
|
|
950
|
+
//
|
|
951
|
+
// Skip the affine flip when _flipY2DInData is set: NiiVue's RGBA
|
|
952
|
+
// 2D Texture2D fast path ignores the orient shader, so the affine
|
|
953
|
+
// y-flip has no visual effect. In that case the rows are reversed
|
|
954
|
+
// in the pixel buffer instead (see _flipRowsInPlace).
|
|
955
|
+
if (this._flipY2D && this._is2D && !this._flipY2DInData) {
|
|
920
956
|
// Get the y axis orientation mapping to find where the y scale is stored
|
|
921
957
|
const mapping = getOrientationMapping(ngffImage.axesOrientations)
|
|
922
958
|
// The y scale is at affine[4 + physicalRow] (column 1, appropriate row)
|
|
@@ -933,6 +969,45 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
933
969
|
this.calculateRAS()
|
|
934
970
|
}
|
|
935
971
|
|
|
972
|
+
/**
|
|
973
|
+
* Reverse the row order of a 2D pixel buffer in place.
|
|
974
|
+
*
|
|
975
|
+
* Used for RGBA 2D images where NiiVue's Texture2D fast path
|
|
976
|
+
* bypasses the orient shader and the affine-based y-flip has no
|
|
977
|
+
* visual effect. Instead we physically reverse the scanlines so
|
|
978
|
+
* the top-to-bottom PNG row order becomes bottom-to-top, matching
|
|
979
|
+
* WebGL's texture coordinate convention.
|
|
980
|
+
*
|
|
981
|
+
* @param data - Typed array containing the pixel data
|
|
982
|
+
* @param width - Number of pixels per row (x dimension)
|
|
983
|
+
* @param height - Number of rows (y dimension)
|
|
984
|
+
* @param bytesPerPixel - Bytes per pixel (e.g. 4 for RGBA)
|
|
985
|
+
*/
|
|
986
|
+
private _flipRowsInPlace(
|
|
987
|
+
data: ArrayBufferView & { readonly length: number },
|
|
988
|
+
width: number,
|
|
989
|
+
height: number,
|
|
990
|
+
bytesPerPixel: number,
|
|
991
|
+
): void {
|
|
992
|
+
const rowBytes = width * bytesPerPixel
|
|
993
|
+
const buf = new Uint8Array(
|
|
994
|
+
data.buffer as ArrayBuffer,
|
|
995
|
+
data.byteOffset,
|
|
996
|
+
data.byteLength,
|
|
997
|
+
)
|
|
998
|
+
const tmp = new Uint8Array(rowBytes)
|
|
999
|
+
|
|
1000
|
+
for (let y = 0; y < height >>> 1; y++) {
|
|
1001
|
+
const topOffset = y * rowBytes
|
|
1002
|
+
const botOffset = (height - 1 - y) * rowBytes
|
|
1003
|
+
|
|
1004
|
+
// Swap top row ↔ bottom row via tmp
|
|
1005
|
+
tmp.set(buf.subarray(topOffset, topOffset + rowBytes))
|
|
1006
|
+
buf.copyWithin(topOffset, botOffset, botOffset + rowBytes)
|
|
1007
|
+
buf.set(tmp, botOffset)
|
|
1008
|
+
}
|
|
1009
|
+
}
|
|
1010
|
+
|
|
936
1011
|
/**
|
|
937
1012
|
* Update NiiVue clip planes from current _clipPlanes.
|
|
938
1013
|
*
|
|
@@ -2775,6 +2850,17 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
2775
2850
|
targetData.set(result.data)
|
|
2776
2851
|
}
|
|
2777
2852
|
|
|
2853
|
+
// Reverse row order for RGBA 2D images (see populateVolume).
|
|
2854
|
+
if (this._flipY2DInData) {
|
|
2855
|
+
const components = this._channelInfo?.components ?? 1
|
|
2856
|
+
this._flipRowsInPlace(
|
|
2857
|
+
targetData,
|
|
2858
|
+
fetchedShape[2], // x dimension (width)
|
|
2859
|
+
fetchedShape[1], // y dimension (height)
|
|
2860
|
+
components * targetData.BYTES_PER_ELEMENT,
|
|
2861
|
+
)
|
|
2862
|
+
}
|
|
2863
|
+
|
|
2778
2864
|
slabState.nvImage.img =
|
|
2779
2865
|
slabState.bufferManager.getTypedArray() as NVImage["img"]
|
|
2780
2866
|
|
|
@@ -2917,8 +3003,9 @@ export class OMEZarrNVImage extends NVImage {
|
|
|
2917
3003
|
affine[14] +=
|
|
2918
3004
|
affine[2] * offsetX + affine[6] * offsetY + affine[10] * offsetZ
|
|
2919
3005
|
|
|
2920
|
-
// For 2D images, flip y before normalization (composes with orientation)
|
|
2921
|
-
|
|
3006
|
+
// For 2D images, flip y before normalization (composes with orientation).
|
|
3007
|
+
// Skip when _flipY2DInData: rows are already reversed in the buffer.
|
|
3008
|
+
if (this._flipY2D && this._is2D && !this._flipY2DInData) {
|
|
2922
3009
|
// Get the y axis orientation mapping to find where the y scale is stored
|
|
2923
3010
|
const mapping = getOrientationMapping(ngffImage.axesOrientations)
|
|
2924
3011
|
// The y scale is at affine[4 + physicalRow] (column 1, appropriate row)
|