postext-folio 0.1.2 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +59 -4
- package/dist/bookGeometry.d.ts +77 -0
- package/dist/bookGeometry.d.ts.map +1 -0
- package/dist/bookGeometry.js +204 -0
- package/dist/bookGeometry.js.map +1 -0
- package/dist/deskTextures.d.ts +24 -0
- package/dist/deskTextures.d.ts.map +1 -0
- package/dist/deskTextures.js +88 -0
- package/dist/deskTextures.js.map +1 -0
- package/dist/environments.d.ts +27 -0
- package/dist/environments.d.ts.map +1 -0
- package/dist/environments.js +97 -0
- package/dist/environments.js.map +1 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/pageFlip.d.ts +160 -26
- package/dist/pageFlip.d.ts.map +1 -1
- package/dist/pageFlip.js +1272 -340
- package/dist/pageFlip.js.map +1 -1
- package/dist/pageFlipFlat.d.ts +131 -0
- package/dist/pageFlipFlat.d.ts.map +1 -0
- package/dist/pageFlipFlat.js +870 -0
- package/dist/pageFlipFlat.js.map +1 -0
- package/dist/paper.d.ts +40 -0
- package/dist/paper.d.ts.map +1 -0
- package/dist/paper.js +65 -0
- package/dist/paper.js.map +1 -0
- package/dist/postext.d.ts +12 -2
- package/dist/postext.d.ts.map +1 -1
- package/dist/postext.js +167 -6
- package/dist/postext.js.map +1 -1
- package/dist/procedural.d.ts +35 -0
- package/dist/procedural.d.ts.map +1 -0
- package/dist/procedural.js +390 -0
- package/dist/procedural.js.map +1 -0
- package/dist/viewer.d.ts +41 -1
- package/dist/viewer.d.ts.map +1 -1
- package/dist/viewer.js +133 -16
- package/dist/viewer.js.map +1 -1
- package/package.json +3 -3
package/dist/viewer.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { resolveFolioConfig } from "postext";
|
|
1
2
|
import { canFlip, PageFlipper } from "./pageFlip";
|
|
2
3
|
import { spreadOfPage, spreadsOf } from "./spreads";
|
|
3
4
|
import { injectStyles } from "./styles";
|
|
@@ -21,6 +22,7 @@ const MIN_MARGIN_Y = 20;
|
|
|
21
22
|
const CHEVRON = (dir) => `<svg aria-hidden="true" viewBox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="${dir === "left" ? "m15 18-6-6 6-6" : "m9 18 6-6-6-6"}"/></svg>`;
|
|
22
23
|
const sourceOf = (page) => (page && typeof page === "object" && "src" in page ? page.src : (page ?? null));
|
|
23
24
|
const altOf = (page) => (page && typeof page === "object" && "src" in page ? page.alt : undefined);
|
|
25
|
+
const paperOf = (page) => page && typeof page === "object" && "src" in page ? page.paper : undefined;
|
|
24
26
|
/** The natural width / height of a page source, when it is known. */
|
|
25
27
|
function aspectOf(src) {
|
|
26
28
|
if (!src || typeof src === "string")
|
|
@@ -60,9 +62,13 @@ export function createFolio(container, options) {
|
|
|
60
62
|
let binding = options.binding ?? "left";
|
|
61
63
|
let mode = options.mode ?? "auto";
|
|
62
64
|
let paper = options.paper ?? "#fff";
|
|
65
|
+
let appearance = options.appearance ?? {};
|
|
66
|
+
let papersKey = JSON.stringify(pages.map(paperOf));
|
|
67
|
+
/** The appearance the flipper was last given, as text. */
|
|
68
|
+
let appearanceKey = "";
|
|
63
69
|
const animate = options.animate ?? true;
|
|
64
70
|
const controls = options.controls ?? true;
|
|
65
|
-
const showCount =
|
|
71
|
+
const showCount = options.showCount ?? true;
|
|
66
72
|
const root = document.createElement("div");
|
|
67
73
|
root.className = "postext-folio";
|
|
68
74
|
root.tabIndex = 0;
|
|
@@ -81,12 +87,13 @@ export function createFolio(container, options) {
|
|
|
81
87
|
count.setAttribute("aria-live", "polite");
|
|
82
88
|
prevBtn.classList.add("is-prev");
|
|
83
89
|
nextBtn.classList.add("is-next");
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
90
|
+
// The count is always there for screen readers (a live region), shown
|
|
91
|
+
// only with `showCount`; `controls: false` leaves the turning to the
|
|
92
|
+
// host's own buttons.
|
|
93
|
+
root.append(spreadEl, prevBtn, nextBtn, count);
|
|
87
94
|
if (!showCount)
|
|
88
95
|
count.classList.add("is-unseen");
|
|
89
|
-
|
|
96
|
+
if (!controls)
|
|
90
97
|
prevBtn.hidden = nextBtn.hidden = true;
|
|
91
98
|
container.append(root);
|
|
92
99
|
let single = false;
|
|
@@ -108,6 +115,34 @@ export function createFolio(container, options) {
|
|
|
108
115
|
// In single mode every sheet carries one page: its back is blank paper
|
|
109
116
|
// (the page after it lies under it, not on its back).
|
|
110
117
|
const bookOf = () => spreads.map((s, k) => (single ? [k === 0 ? null : "", sourceOf(pages[s[1]])] : s.map((i) => (i === null ? null : sourceOf(pages[i])))));
|
|
118
|
+
/** The flipper's appearance: the leaves' own papers (a leaf takes its
|
|
119
|
+
* recto's, else its verso's) and the leaves outside the pages given. */
|
|
120
|
+
function flipAppearance() {
|
|
121
|
+
const extra = appearance.extraPages ?? { before: 0, after: 0 };
|
|
122
|
+
const leafPapers = spreads.slice(0, -1).map((s, k) => single ? paperOf(pages[s[1]]) : (paperOf(pages[s[1] ?? -1]) ?? paperOf(pages[spreads[k + 1]?.[0] ?? -1])));
|
|
123
|
+
return {
|
|
124
|
+
folio: appearance.folio,
|
|
125
|
+
pageWidthMm: appearance.pageWidthMm,
|
|
126
|
+
extraLeaves: single ? { before: extra.before, after: extra.after } : { before: Math.ceil(extra.before / 2), after: Math.ceil(extra.after / 2) },
|
|
127
|
+
leafPapers,
|
|
128
|
+
singlePage: single,
|
|
129
|
+
textureBaseUrl: appearance.textureBaseUrl,
|
|
130
|
+
coverLeaves: coverLeavesOf(),
|
|
131
|
+
...(appearance.spineImage ? { spineImage: appearance.spineImage } : {}),
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
/** The leaves that are the covers: the first, when the book opens on its
|
|
135
|
+
* first page alone; the last, when the last page is a verso alone. */
|
|
136
|
+
function coverLeavesOf() {
|
|
137
|
+
const c = appearance.covers;
|
|
138
|
+
if (!c || spreads.length < 2)
|
|
139
|
+
return undefined;
|
|
140
|
+
const last = spreads[spreads.length - 1];
|
|
141
|
+
return {
|
|
142
|
+
...(c.front && (single || spreads[0][0] === null) ? { front: 0 } : {}),
|
|
143
|
+
...(c.back && !single && last[1] === null ? { back: spreads.length - 2 } : {}),
|
|
144
|
+
};
|
|
145
|
+
}
|
|
111
146
|
function aspect() {
|
|
112
147
|
if (options.aspect)
|
|
113
148
|
return options.aspect;
|
|
@@ -173,7 +208,10 @@ export function createFolio(container, options) {
|
|
|
173
208
|
const marginY = Math.round(Math.max(MIN_MARGIN_Y, showCount ? count.offsetHeight + 2 * GAP : GAP) * dpr);
|
|
174
209
|
const availW = Math.max(0, boxW - 2 * marginX);
|
|
175
210
|
const availH = Math.max(0, boxH - 2 * marginY);
|
|
176
|
-
|
|
211
|
+
// A tilted book is foreshortened: its pages may be taller than the
|
|
212
|
+
// box before their image is.
|
|
213
|
+
const tall = flipper ? 1 / Math.max(0.7, Math.cos((resolveFolioConfig(appearance.folio).tilt * Math.PI) / 180)) : 1;
|
|
214
|
+
deviceWidth = fitWidth(Math.min(availW / 2, availH > 0 ? availH * tall * ar : Infinity));
|
|
177
215
|
left = Math.floor((boxW - 2 * deviceWidth) / 2);
|
|
178
216
|
top = Math.max(0, Math.floor((boxH - Math.round(deviceWidth / ar)) / 2));
|
|
179
217
|
}
|
|
@@ -305,6 +343,8 @@ export function createFolio(container, options) {
|
|
|
305
343
|
flipCanvas.className = "postext-folio-flip";
|
|
306
344
|
flipCanvas.setAttribute("aria-hidden", "true");
|
|
307
345
|
root.append(flipCanvas);
|
|
346
|
+
const initial = flipAppearance();
|
|
347
|
+
appearanceKey = JSON.stringify(initial);
|
|
308
348
|
flipper = new PageFlipper(flipCanvas, spreadEl, bookOf(), shown, settle, (i) => {
|
|
309
349
|
current = i;
|
|
310
350
|
options.onTarget?.({ spread: i, pages: pagesOf(spreads[i]) });
|
|
@@ -312,7 +352,7 @@ export function createFolio(container, options) {
|
|
|
312
352
|
}, binding,
|
|
313
353
|
// One page at a time the spine is the box's edge: the leaf cannot be
|
|
314
354
|
// carried past halfway, so a shorter pull turns it.
|
|
315
|
-
{ persistent: true, turnAt: single ? 0.2 : 0.5 });
|
|
355
|
+
{ persistent: true, turnAt: single ? 0.2 : 0.5, appearance: initial });
|
|
316
356
|
const rgb = rgbOf(paper);
|
|
317
357
|
if (rgb)
|
|
318
358
|
flipper.setPaper(...rgb);
|
|
@@ -356,7 +396,44 @@ export function createFolio(container, options) {
|
|
|
356
396
|
return;
|
|
357
397
|
event.preventDefault();
|
|
358
398
|
});
|
|
399
|
+
// Right-drag orbits the view round the book; the view stays where it is
|
|
400
|
+
// left until `resetView()` (the host's button) eases it back.
|
|
401
|
+
root.addEventListener("contextmenu", (event) => {
|
|
402
|
+
if (flipper)
|
|
403
|
+
event.preventDefault();
|
|
404
|
+
});
|
|
405
|
+
root.addEventListener("pointerdown", (event) => {
|
|
406
|
+
if (event.button !== 2 || !flipper)
|
|
407
|
+
return;
|
|
408
|
+
event.preventDefault();
|
|
409
|
+
const id = event.pointerId;
|
|
410
|
+
let x = event.clientX;
|
|
411
|
+
let y = event.clientY;
|
|
412
|
+
const move = (e) => {
|
|
413
|
+
if (e.pointerId !== id)
|
|
414
|
+
return;
|
|
415
|
+
if ((e.buttons & 2) === 0)
|
|
416
|
+
return end();
|
|
417
|
+
flipper?.orbitBy(e.clientX - x, e.clientY - y);
|
|
418
|
+
x = e.clientX;
|
|
419
|
+
y = e.clientY;
|
|
420
|
+
};
|
|
421
|
+
const up = (e) => {
|
|
422
|
+
if (e.pointerId === id)
|
|
423
|
+
end();
|
|
424
|
+
};
|
|
425
|
+
const end = () => {
|
|
426
|
+
window.removeEventListener("pointermove", move);
|
|
427
|
+
window.removeEventListener("pointerup", up);
|
|
428
|
+
window.removeEventListener("blur", end);
|
|
429
|
+
};
|
|
430
|
+
window.addEventListener("pointermove", move);
|
|
431
|
+
window.addEventListener("pointerup", up);
|
|
432
|
+
window.addEventListener("blur", end);
|
|
433
|
+
});
|
|
359
434
|
root.addEventListener("pointerdown", (event) => {
|
|
435
|
+
if (onPage(event))
|
|
436
|
+
return;
|
|
360
437
|
if (event.pointerType !== "mouse")
|
|
361
438
|
swipe = { x: event.clientX, y: event.clientY };
|
|
362
439
|
});
|
|
@@ -369,18 +446,28 @@ export function createFolio(container, options) {
|
|
|
369
446
|
if (Math.abs(dx) > SWIPE && Math.abs(dx) > Math.abs(event.clientY - start.y))
|
|
370
447
|
go(current + ((dx < 0) !== rtl() ? 1 : -1));
|
|
371
448
|
});
|
|
372
|
-
|
|
449
|
+
/** A press on a page: taken by hand (the WebGL book, hit in 3D, since
|
|
450
|
+
* the tilted book does not lie over the DOM spread), or remembered as a
|
|
451
|
+
* possible click. True when the stage's swipe should not hear it. */
|
|
452
|
+
function onPage(event) {
|
|
373
453
|
if (event.button !== 0 || holding)
|
|
374
|
-
return;
|
|
454
|
+
return false;
|
|
455
|
+
const target = event.target;
|
|
456
|
+
if (target.closest(".postext-folio-nav"))
|
|
457
|
+
return false;
|
|
458
|
+
if (flipper ? !flipper.hit(event) : !target.closest(".postext-folio-spread"))
|
|
459
|
+
return false;
|
|
375
460
|
press = { x: event.clientX, y: event.clientY };
|
|
376
|
-
if (singleGl())
|
|
377
|
-
|
|
461
|
+
if (singleGl()) {
|
|
462
|
+
decide(event);
|
|
463
|
+
return true;
|
|
464
|
+
}
|
|
378
465
|
if (!flipper?.grab(event))
|
|
379
|
-
return;
|
|
466
|
+
return false;
|
|
380
467
|
event.preventDefault();
|
|
381
|
-
event.stopPropagation();
|
|
382
468
|
hold(event, press);
|
|
383
|
-
|
|
469
|
+
return true;
|
|
470
|
+
}
|
|
384
471
|
/**
|
|
385
472
|
* One page at a time, the page is taken only once the pointer shows
|
|
386
473
|
* which way it goes: towards the spine it is lifted and dragged over
|
|
@@ -482,16 +569,25 @@ export function createFolio(container, options) {
|
|
|
482
569
|
// The window listeners carry the hold without it.
|
|
483
570
|
}
|
|
484
571
|
}
|
|
485
|
-
|
|
572
|
+
root.addEventListener("pointerup", (event) => {
|
|
486
573
|
if (holding || singleGl())
|
|
487
574
|
return;
|
|
488
575
|
const start = press;
|
|
489
576
|
press = null;
|
|
490
577
|
const click = !!start && Math.hypot(event.clientX - start.x, event.clientY - start.y) < CLICK_SLOP;
|
|
491
|
-
if (!click
|
|
578
|
+
if (!click)
|
|
492
579
|
return;
|
|
493
580
|
// A click on the recto turns forward, on the verso back (pages already
|
|
494
581
|
// in the air: it joins them).
|
|
582
|
+
if (flipper) {
|
|
583
|
+
const side = flipper.hit(event);
|
|
584
|
+
if (!side)
|
|
585
|
+
return;
|
|
586
|
+
swipe = null;
|
|
587
|
+
return go(current + (single ? 1 : side));
|
|
588
|
+
}
|
|
589
|
+
if (!event.target.closest(".postext-folio-page:not(.is-empty)"))
|
|
590
|
+
return;
|
|
495
591
|
const rect = spreadEl.getBoundingClientRect();
|
|
496
592
|
swipe = null;
|
|
497
593
|
if (single)
|
|
@@ -529,6 +625,19 @@ export function createFolio(container, options) {
|
|
|
529
625
|
get pageSize() {
|
|
530
626
|
return slot;
|
|
531
627
|
},
|
|
628
|
+
resetView() {
|
|
629
|
+
flipper?.resetOrbit();
|
|
630
|
+
},
|
|
631
|
+
setAppearance(next) {
|
|
632
|
+
appearance = { ...appearance, ...next };
|
|
633
|
+
const flip = flipAppearance();
|
|
634
|
+
const key = JSON.stringify(flip);
|
|
635
|
+
if (key === appearanceKey)
|
|
636
|
+
return;
|
|
637
|
+
appearanceKey = key;
|
|
638
|
+
flipper?.setAppearance(flip);
|
|
639
|
+
fit();
|
|
640
|
+
},
|
|
532
641
|
get state() {
|
|
533
642
|
return { spread: current, pages: pagesOf(spreads[current]) };
|
|
534
643
|
},
|
|
@@ -548,6 +657,14 @@ export function createFolio(container, options) {
|
|
|
548
657
|
return rebuild(atPage);
|
|
549
658
|
// Same spreads: the leaves take their new pages where they lie.
|
|
550
659
|
flipper?.setBook(bookOf(), opts.at !== undefined ? spreadOfPage(spreads, opts.at) : undefined);
|
|
660
|
+
// Pages that came with another paper (a relayout moved a plate run).
|
|
661
|
+
const papers = JSON.stringify(pages.map(paperOf));
|
|
662
|
+
if (flipper && papers !== papersKey) {
|
|
663
|
+
const flip = flipAppearance();
|
|
664
|
+
appearanceKey = JSON.stringify(flip);
|
|
665
|
+
flipper.setAppearance(flip);
|
|
666
|
+
}
|
|
667
|
+
papersKey = papers;
|
|
551
668
|
if (opts.at !== undefined)
|
|
552
669
|
current = shown = spreadOfPage(spreads, opts.at);
|
|
553
670
|
fit();
|
package/dist/viewer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viewer.js","sourceRoot":"","sources":["../src/viewer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"viewer.js","sourceRoot":"","sources":["../src/viewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAA2C,MAAM,SAAS,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAwD,MAAM,YAAY,CAAC;AACxG,OAAO,EAAE,YAAY,EAAE,SAAS,EAAe,MAAM,WAAW,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AA0HxC,MAAM,cAAc,GAAgB;IAClC,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACtB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,KAAK,EAAE;CACpI,CAAC;AAEF;oDACoD;AACpD,MAAM,UAAU,GAAG,CAAC,CAAC;AACrB,iEAAiE;AACjE,MAAM,KAAK,GAAG,EAAE,CAAC;AACjB,qEAAqE;AACrE,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAC;AAChC;0EAC0E;AAC1E,MAAM,GAAG,GAAG,EAAE,CAAC;AACf,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,MAAM,OAAO,GAAG,CAAC,GAAqB,EAAE,EAAE,CACxC,iLAAiL,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe,WAAW,CAAC;AAElP,MAAM,QAAQ,GAAG,CAAC,IAA2B,EAAc,EAAE,CAAC,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC;AAC9I,MAAM,KAAK,GAAG,CAAC,IAA2B,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAC1H,MAAM,OAAO,GAAG,CAAC,IAA2B,EAAE,EAAE,CAC9C,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,CAAE,IAAqC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAE/G,qEAAqE;AACrE,SAAS,QAAQ,CAAC,GAAe;IAC/B,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACjD,MAAM,CAAC,GAAG,GAAG,YAAY,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;IAC1E,MAAM,CAAC,GAAG,GAAG,YAAY,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC;AAED,sCAAsC;AACtC,SAAS,KAAK,CAAC,KAAa;IAC1B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,iDAAiD;IACjD,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC;IACvB,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC;IACtB,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,MAAM,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,SAAsB,EAAE,OAAqB;IACvE,YAAY,CAAC,SAAS,CAAC,CAAC;IACxB,IAAI,MAAM,GAAgB,EAAE,GAAG,cAAc,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IACnE,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC1B,IAAI,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC;IACpD,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC;IACxC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC;IAClC,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC;IACpC,IAAI,UAAU,GAAoB,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3D,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACnD,0DAA0D;IAC1D,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC;IACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;IAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;IAE5C,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,GAAG,eAAe,CAAC;IACjC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;IAClB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,IAAI,CAAC,YAAY,CAAC,sBAAsB,EAAE,UAAU,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjD,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;QACrC,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC;QACpB,GAAG,CAAC,SAAS,GAAG,mBAAmB,CAAC;IACtC,CAAC;IACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC/C,QAAQ,CAAC,SAAS,GAAG,sBAAsB,CAAC;IAC5C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1C,KAAK,CAAC,SAAS,GAAG,qBAAqB,CAAC;IACxC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC1C,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,sEAAsE;IACtE,qEAAqE;IACrE,sBAAsB;IACtB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC,SAAS;QAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACjD,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IACtD,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEvB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,OAAO,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,OAAO,GAAuB,IAAI,CAAC;IACvC,IAAI,UAAU,GAA6B,IAAI,CAAC;IAChD,IAAI,OAAO,GAAsC,IAAI,CAAC;IACtD,IAAI,KAAK,GAAoC,IAAI,CAAC;IAClD,IAAI,KAAK,GAAoC,IAAI,CAAC;IAClD,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,IAAI,GAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IAEnF,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,OAAO,KAAK,OAAO,CAAC;IACtC,MAAM,OAAO,GAAG,CAAC,CAAqB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IACtG;iEAC6D;IAC7D,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC;IAC3C,uEAAuE;IACvE,sDAAsD;IACtD,MAAM,MAAM,GAAG,GAAgB,EAAE,CAC/B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAc,CAAC,CAAC;IAExJ;6EACyE;IACzE,SAAS,cAAc;QACrB,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAC/D,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACnD,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAC3G,CAAC;QACF,OAAO;YACL,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE;YAC/I,UAAU;YACV,UAAU,EAAE,MAAM;YAClB,cAAc,EAAE,UAAU,CAAC,cAAc;YACzC,WAAW,EAAE,aAAa,EAAE;YAC5B,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxE,CAAC;IACJ,CAAC;IAED;2EACuE;IACvE,SAAS,aAAa;QACpB,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;QAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzC,OAAO;YACL,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/E,CAAC;IACJ,CAAC;IAED,SAAS,MAAM;QACb,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC;QAC1C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YACpC,IAAI,EAAE;gBAAE,OAAO,EAAE,CAAC;QACpB,CAAC;QACD,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,GAAG;QACV,MAAM,GAAG,GAAG,MAAM,CAAC,gBAAgB,IAAI,CAAC,CAAC;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QAC1C,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;QAClC,mEAAmE;QACnE,sEAAsE;QACtE,iDAAiD;QACjD,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE;YAC/B,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;gBAAE,CAAC,EAAE,CAAC;YACvD,OAAO,CAAC,CAAC;QACX,CAAC,CAAC;QACF,IAAI,WAAmB,CAAC;QACxB,IAAI,IAAY,CAAC;QACjB,IAAI,GAAW,CAAC;QAChB,IAAI,MAAc,CAAC;QACnB,IAAI,MAAM,EAAE,CAAC;YACX,qEAAqE;YACrE,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;YAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;YAC7C,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC9E,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9D,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACjE,IAAI,OAAO,EAAE,CAAC;gBACZ,oEAAoE;gBACpE,kEAAkE;gBAClE,+BAA+B;gBAC/B,MAAM,GAAG,CAAC,CAAC;gBACX,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAAG,WAAW,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,CAAC,CAAC;gBACX,IAAI,GAAG,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC,CAAC;YACX,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;YACnF,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;YACzG,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;YAC/C,mEAAmE;YACnE,6BAA6B;YAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpH,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YACzF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;YAChD,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE;YAC5B,IAAI,EAAE,GAAG,IAAI,GAAG,GAAG,IAAI;YACvB,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI;YACrB,KAAK,EAAE,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,GAAG,IAAI;YAC1C,MAAM,EAAE,GAAG,YAAY,GAAG,GAAG,IAAI;SAClC,CAAC,CAAC;QACH,IAAI,UAAU,EAAE,CAAC;YACf,mEAAmE;YACnE,iEAAiE;YACjE,oCAAoC;YACpC,MAAM,EAAE,GAAG,IAAI,GAAG,WAAW,CAAC;YAC9B,MAAM,EAAE,GAAG,GAAG,GAAG,YAAY,GAAG,CAAC,CAAC;YAClC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;YACnC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE;gBAC9B,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI;gBAC5B,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI;gBAC3B,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI;gBAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI;aAC9B,CAAC,CAAC;QACL,CAAC;QACD,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,MAAM,EAAE,YAAY,GAAG,GAAG,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;QACjG,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;YACrF,IAAI,GAAG,IAAI,CAAC;YACZ,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC;IAED,SAAS,MAAM,CAAC,CAAgB,EAAE,IAAW;QAC3C,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACzC,EAAE,CAAC,SAAS,GAAG,oBAAoB,CAAC;QACpC,IAAI,CAAC,MAAM,IAAI,QAAQ,EAAE;YAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAClF,MAAM,GAAG,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACjB,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC7B,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC;aAAM,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;YACtB,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC7B,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACnC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAC1C,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;gBACd,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;gBACd,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC;gBACtB,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC;gBACvB,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,sEAAsE;gBACtE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;gBAC3C,IAAI,GAAG,YAAY,iBAAiB,EAAE,CAAC;oBACrC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;oBAChC,IAAI,GAAG;wBAAE,GAAG,CAAC,YAAY,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;gBAC/C,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;oBACd,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC;gBACxB,CAAC;gBACD,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC;QACH,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,SAAS,MAAM;QACb,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,QAAQ,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,IAAa,CAAC,CAAC,CAAC,CAAC;QAC9E,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5D,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QACnD,qEAAqE;QACrE,0DAA0D;QAC1D,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACrC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,OAAO,CAAC,QAAQ,GAAG,OAAO,IAAI,CAAC,CAAC;QAChC,OAAO,CAAC,QAAQ,GAAG,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACjD,qCAAqC;QACrC,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IAED,SAAS,MAAM,CAAC,KAAa;QAC3B,KAAK,GAAG,KAAK,CAAC;QACd,MAAM,EAAE,CAAC;QACT,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,SAAS,EAAE,CAAC,KAAa;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5D,IAAI,EAAE,KAAK,OAAO,IAAI,EAAE,KAAK,KAAK;YAAE,OAAO;QAC3C,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAChE,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACf,iDAAiD;YACjD,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YACrE,OAAO,CAAC,QAAQ,GAAG,EAAE,IAAI,CAAC,CAAC;YAC3B,OAAO,CAAC,QAAQ,GAAG,EAAE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAC9C,CAAC;;YAAM,MAAM,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IAED,qDAAqD;IACrD,SAAS,IAAI,CAAC,KAAa;QACzB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5D,IAAI,EAAE,KAAK,OAAO,IAAI,EAAE,KAAK,KAAK;YAAE,OAAO;QAC3C,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAChE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/B,MAAM,CAAC,EAAE,CAAC,CAAC;IACb,CAAC;IAED,SAAS,YAAY;QACnB,OAAO,EAAE,OAAO,EAAE,CAAC;QACnB,OAAO,GAAG,IAAI,CAAC;QACf,UAAU,EAAE,MAAM,EAAE,CAAC;QACrB,UAAU,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO;QACzD,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC9C,UAAU,CAAC,SAAS,GAAG,oBAAoB,CAAC;QAC5C,UAAU,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxB,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;QACjC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACxC,OAAO,GAAG,IAAI,WAAW,CACvB,UAAU,EACV,QAAQ,EACR,MAAM,EAAE,EACR,KAAK,EACL,MAAM,EACN,CAAC,CAAC,EAAE,EAAE;YACJ,OAAO,GAAG,CAAC,CAAC;YACZ,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC9D,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACtE,CAAC,EACD,OAAO;QACP,qEAAqE;QACrE,oDAAoD;QACpD,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CACtE,CAAC;QACF,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,GAAG;YAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,uDAAuD;IACvD,SAAS,OAAO,CAAC,MAAc;QAC7B,MAAM,GAAG,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC,CAAC;QAC3G,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QACtG,OAAO,GAAG,KAAK,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QACvD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC3C,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACtD,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACtD,YAAY,EAAE,CAAC;QACf,GAAG,EAAE,CAAC;QACN,MAAM,EAAE,CAAC;IACX,CAAC;IAED,SAAS,WAAW;QAClB,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/C,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAChD,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IAED,cAAc;IACd,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;IACzD,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;QACzC,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI;YAAE,OAAO;QAClC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC;QACnD,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC;QAChD,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ;YAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;aAC7D,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,UAAU;YAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;aACvE,IAAI,KAAK,CAAC,GAAG,KAAK,MAAM;YAAE,EAAE,CAAC,CAAC,CAAC,CAAC;aAChC,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK;YAAE,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;;YAChD,OAAO;QACZ,KAAK,CAAC,cAAc,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IACH,wEAAwE;IACxE,8DAA8D;IAC9D,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;QAC7C,IAAI,OAAO;YAAE,KAAK,CAAC,cAAc,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;QAC7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC3C,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC;QAC3B,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QACtB,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QACtB,MAAM,IAAI,GAAG,CAAC,CAAe,EAAE,EAAE;YAC/B,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE;gBAAE,OAAO;YAC/B,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC;gBAAE,OAAO,GAAG,EAAE,CAAC;YACxC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YAC/C,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;YACd,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;QAChB,CAAC,CAAC;QACF,MAAM,EAAE,GAAG,CAAC,CAAe,EAAE,EAAE;YAC7B,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE;gBAAE,GAAG,EAAE,CAAC;QAChC,CAAC,CAAC;QACF,MAAM,GAAG,GAAG,GAAG,EAAE;YACf,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAChD,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAC5C,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC1C,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACzC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;QAC7C,IAAI,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO;QAC1B,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO;YAAE,KAAK,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IACpF,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;QAC3C,MAAM,KAAK,GAAG,KAAK,CAAC;QACpB,KAAK,GAAG,IAAI,CAAC;QACb,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;YAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5H,CAAC,CAAC,CAAC;IACH;;0EAEsE;IACtE,SAAS,MAAM,CAAC,KAAmB;QACjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO;YAAE,OAAO,KAAK,CAAC;QAChD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAiB,CAAC;QACvC,IAAI,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC;YAAE,OAAO,KAAK,CAAC;QACvD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC;YAAE,OAAO,KAAK,CAAC;QAC3F,KAAK,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QAC/C,IAAI,QAAQ,EAAE,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,CAAC;YACd,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACxC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,SAAS,MAAM,CAAC,IAAkB;QAChC,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,KAAK,GAAG,IAAI,CAAC;QACb,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QACnD,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAClD,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACpD,MAAM,CAAC,mBAAmB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QACxD,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,CAAe,EAAE,EAAE;YACjC,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE;gBAAE,OAAO;YAC/B,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;YAC/B,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;YAC/B,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,UAAU,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,OAAO;YAC3E,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,OAAO;gBAAE,OAAO,CAAC,mCAAmC;YAC1E,IAAI,EAAE,CAAC;YACP,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC;gBAAE,OAAO;YACjC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,CAAe,EAAE,EAAE;YAC/B,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE;gBAAE,OAAO;YAC/B,IAAI,EAAE,CAAC;YACP,KAAK,GAAG,IAAI,CAAC;YACb,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;YAC/B,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;YAC/B,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,UAAU;gBAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;iBAChD,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO;gBAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YAC5G,CAAC,CAAC,eAAe,EAAE,CAAC;QACtB,CAAC,CAAC;QACF,MAAM,QAAQ,GAAG,CAAC,CAAe,EAAE,EAAE;YACnC,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE;gBAAE,IAAI,EAAE,CAAC;QACjC,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACjD,MAAM,CAAC,gBAAgB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED,iEAAiE;IACjE,SAAS,IAAI,CAAC,KAAmB,EAAE,KAA+B;QAChE,qEAAqE;QACrE,uEAAuE;QACvE,cAAc;QACd,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC;QAC3B,MAAM,MAAM,GAAG,CAAC,CAAe,EAAE,EAAE;YACjC,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE;gBAAE,OAAO;YAC/B,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC;gBAAE,GAAG,CAAC,KAAK,CAAC,CAAC;;gBACjC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,CAAe,EAAE,EAAE;YAC/B,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE;gBAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC;QACjG,CAAC,CAAC;QACF,MAAM,QAAQ,GAAG,CAAC,CAAe,EAAE,EAAE;YACnC,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE;gBAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,CAAC,KAAc,EAAE,EAAE;YAC7B,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAClD,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACpD,MAAM,CAAC,mBAAmB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;YACtD,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC3C,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACrC,OAAO,GAAG,IAAI,CAAC;YACf,KAAK,GAAG,IAAI,CAAC;YACb,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC/C,mEAAmE;QACnE,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACjD,MAAM,CAAC,gBAAgB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QACnD,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxC,OAAO,GAAG,GAAG,CAAC;QACd,KAAK,GAAG,IAAI,CAAC;QACb,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,CAAC;YACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;YACP,kDAAkD;QACpD,CAAC;IACH,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;QAC3C,IAAI,OAAO,IAAI,QAAQ,EAAE;YAAE,OAAO;QAClC,MAAM,KAAK,GAAG,KAAK,CAAC;QACpB,KAAK,GAAG,IAAI,CAAC;QACb,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;QACnG,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,uEAAuE;QACvE,8BAA8B;QAC9B,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,CAAC,IAAI;gBAAE,OAAO;YAClB,KAAK,GAAG,IAAI,CAAC;YACb,OAAO,EAAE,CAAC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,CAAE,KAAK,CAAC,MAAkB,CAAC,OAAO,CAAC,oCAAoC,CAAC;YAAE,OAAO;QACrF,MAAM,IAAI,GAAG,QAAQ,CAAC,qBAAqB,EAAE,CAAC;QAC9C,KAAK,GAAG,IAAI,CAAC;QACb,IAAI,MAAM;YAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;;YACvB,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;IAEH,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC;IACnB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE;QACvC,IAAI,QAAQ;YAAE,OAAO;QACrB,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;QAC3B,MAAM,SAAS,GAAG,MAAM,CAAC;QACzB,MAAM,SAAS,GAAG,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;QACtF,IAAI,SAAS,IAAI,CAAC,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;;YACnF,GAAG,EAAE,CAAC;QACX,SAAS,GAAG,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB,WAAW,EAAE,CAAC;IACd,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAEzB,OAAO;QACL,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACpF,UAAU,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC;QAC/D,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC;QAC3B,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC;QAC3B,SAAS,CAAC,IAAI;YACZ,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC;YAChC,WAAW,EAAE,CAAC;YACd,MAAM,EAAE,CAAC;QACX,CAAC;QACD,IAAI,QAAQ;YACV,OAAO,IAAI,CAAC;QACd,CAAC;QACD,SAAS;YACP,OAAO,EAAE,UAAU,EAAE,CAAC;QACxB,CAAC;QACD,aAAa,CAAC,IAAI;YAChB,UAAU,GAAG,EAAE,GAAG,UAAU,EAAE,GAAG,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,GAAG,KAAK,aAAa;gBAAE,OAAO;YAClC,aAAa,GAAG,GAAG,CAAC;YACpB,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;YAC7B,GAAG,EAAE,CAAC;QACR,CAAC;QACD,IAAI,KAAK;YACP,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC/D,CAAC;QACD,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE;YACtB,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC1D,MAAM,QAAQ,GACZ,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;gBAC5B,CAAC,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,KAAK,cAAc;gBAC1D,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,OAAO;gBACrC,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI;gBAC5B,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC;YAClC,KAAK,GAAG,IAAI,CAAC;YACb,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC;YACvD,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC;YAClC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;YACzB,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;YAC5B,IAAI,QAAQ;gBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC;YACrC,gEAAgE;YAChE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC/F,qEAAqE;YACrE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;YAClD,IAAI,OAAO,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;gBAC9B,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACrC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;YACD,SAAS,GAAG,MAAM,CAAC;YACnB,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS;gBAAE,OAAO,GAAG,KAAK,GAAG,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAC5E,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,CAAC;QACX,CAAC;QACD,OAAO;YACL,QAAQ,GAAG,IAAI,CAAC;YAChB,QAAQ,CAAC,UAAU,EAAE,CAAC;YACtB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;YACjB,OAAO,EAAE,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,CAAC;KACoB,CAAC;AAC1B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "postext-folio",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "A 3D book viewer for Postext documents and page images: three.js leaves that curl, cast real shadows and turn by hand, for left- and right-bound books.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"./package.json": "./package.json"
|
|
34
34
|
},
|
|
35
35
|
"peerDependencies": {
|
|
36
|
-
"postext": "^1.
|
|
36
|
+
"postext": "^1.13.1",
|
|
37
37
|
"three": ">=0.160.0"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"@types/node": "^26.5.0",
|
|
42
42
|
"@types/three": "^0.186.0",
|
|
43
43
|
"eslint": "^9.39.4",
|
|
44
|
-
"postext": "1.
|
|
44
|
+
"postext": "1.13.1",
|
|
45
45
|
"three": "^0.186.1",
|
|
46
46
|
"typescript": "^6.0.3",
|
|
47
47
|
"typescript-eslint": "^8.70.0",
|