oakscriptjs 0.9.6 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/cjs/array/index.d.ts +9 -23
- package/dist/cjs/array/index.d.ts.map +1 -1
- package/dist/cjs/array/index.js +4 -0
- package/dist/cjs/array/index.js.map +2 -2
- package/dist/cjs/drawing/bar-time.d.ts +24 -0
- package/dist/cjs/drawing/bar-time.d.ts.map +1 -0
- package/dist/cjs/drawing/bar-time.js +47 -0
- package/dist/cjs/drawing/bar-time.js.map +7 -0
- package/dist/cjs/drawing/output.d.ts +32 -0
- package/dist/cjs/drawing/output.d.ts.map +1 -0
- package/dist/cjs/drawing/output.js +184 -0
- package/dist/cjs/drawing/output.js.map +7 -0
- package/dist/cjs/drawing/registry.d.ts +5 -4
- package/dist/cjs/drawing/registry.d.ts.map +1 -1
- package/dist/cjs/drawing/registry.js +11 -2
- package/dist/cjs/drawing/registry.js.map +2 -2
- package/dist/cjs/index.d.ts +6 -3
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +9 -2
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/polyline/index.d.ts +3 -5
- package/dist/cjs/polyline/index.d.ts.map +1 -1
- package/dist/cjs/polyline/index.js +0 -5
- package/dist/cjs/polyline/index.js.map +2 -2
- package/dist/cjs/runtime/types.d.ts +22 -0
- package/dist/cjs/runtime/types.d.ts.map +1 -1
- package/dist/cjs/runtime/types.js.map +1 -1
- package/dist/cjs/script/index.d.ts +82 -5
- package/dist/cjs/script/index.d.ts.map +1 -1
- package/dist/cjs/script/index.js +141 -26
- package/dist/cjs/script/index.js.map +3 -3
- package/dist/cjs/table/index.d.ts +87 -0
- package/dist/cjs/table/index.d.ts.map +1 -0
- package/dist/cjs/table/index.js +150 -0
- package/dist/cjs/table/index.js.map +7 -0
- package/dist/cjs/text/index.d.ts +17 -2
- package/dist/cjs/text/index.d.ts.map +1 -1
- package/dist/cjs/text/index.js +15 -1
- package/dist/cjs/text/index.js.map +2 -2
- package/dist/cjs/types/index.d.ts +30 -1
- package/dist/cjs/types/index.d.ts.map +1 -1
- package/dist/cjs/types/index.js +12 -0
- package/dist/cjs/types/index.js.map +2 -2
- package/dist/cjs/types/metadata.d.ts +258 -26
- package/dist/cjs/types/metadata.d.ts.map +1 -1
- package/dist/cjs/types/metadata.js.map +1 -1
- package/dist/esm/array/index.d.ts +9 -23
- package/dist/esm/array/index.d.ts.map +1 -1
- package/dist/esm/array/index.js +10 -22
- package/dist/esm/array/index.js.map +1 -1
- package/dist/esm/drawing/bar-time.d.ts +24 -0
- package/dist/esm/drawing/bar-time.d.ts.map +1 -0
- package/dist/esm/drawing/bar-time.js +44 -0
- package/dist/esm/drawing/bar-time.js.map +1 -0
- package/dist/esm/drawing/output.d.ts +32 -0
- package/dist/esm/drawing/output.d.ts.map +1 -0
- package/dist/esm/drawing/output.js +190 -0
- package/dist/esm/drawing/output.js.map +1 -0
- package/dist/esm/drawing/registry.d.ts +5 -4
- package/dist/esm/drawing/registry.d.ts.map +1 -1
- package/dist/esm/drawing/registry.js +12 -2
- package/dist/esm/drawing/registry.js.map +1 -1
- package/dist/esm/index.d.ts +6 -3
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +7 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/polyline/index.d.ts +3 -5
- package/dist/esm/polyline/index.d.ts.map +1 -1
- package/dist/esm/polyline/index.js +3 -9
- package/dist/esm/polyline/index.js.map +1 -1
- package/dist/esm/runtime/types.d.ts +22 -0
- package/dist/esm/runtime/types.d.ts.map +1 -1
- package/dist/esm/script/index.d.ts +82 -5
- package/dist/esm/script/index.d.ts.map +1 -1
- package/dist/esm/script/index.js +167 -21
- package/dist/esm/script/index.js.map +1 -1
- package/dist/esm/table/index.d.ts +87 -0
- package/dist/esm/table/index.d.ts.map +1 -0
- package/dist/esm/table/index.js +169 -0
- package/dist/esm/table/index.js.map +1 -0
- package/dist/esm/text/index.d.ts +17 -2
- package/dist/esm/text/index.d.ts.map +1 -1
- package/dist/esm/text/index.js +17 -2
- package/dist/esm/text/index.js.map +1 -1
- package/dist/esm/types/index.d.ts +30 -1
- package/dist/esm/types/index.d.ts.map +1 -1
- package/dist/esm/types/index.js +14 -0
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/metadata.d.ts +258 -26
- package/dist/esm/types/metadata.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/array/index.ts +12 -23
- package/src/drawing/bar-time.ts +42 -0
- package/src/drawing/output.ts +214 -0
- package/src/drawing/registry.ts +16 -6
- package/src/index.ts +9 -3
- package/src/polyline/index.ts +3 -12
- package/src/runtime/types.ts +23 -0
- package/src/script/index.ts +254 -24
- package/src/table/index.ts +221 -0
- package/src/text/index.ts +18 -2
- package/src/types/index.ts +32 -1
- package/src/types/metadata.ts +325 -26
package/dist/esm/script/index.js
CHANGED
|
@@ -42,10 +42,12 @@ import * as labelCore from '../label/index.js';
|
|
|
42
42
|
import * as boxCore from '../box/index.js';
|
|
43
43
|
import * as linefillCore from '../linefill/index.js';
|
|
44
44
|
import * as polylineCore from '../polyline/index.js';
|
|
45
|
+
import * as tableCore from '../table/index.js';
|
|
45
46
|
import * as chartPointCore from '../chartpoint/index.js';
|
|
46
47
|
import * as textCore from '../text/index.js';
|
|
47
48
|
import * as mathCore from '../math/index.js';
|
|
48
49
|
import { resetDrawings, setDrawingLimits } from '../drawing/registry.js';
|
|
50
|
+
import { drawingOutputs } from '../drawing/output.js';
|
|
49
51
|
import * as timeframeCore from '../timeframe/index.js';
|
|
50
52
|
import * as timeCore from '../time/index.js';
|
|
51
53
|
import * as strCore from '../str/index.js';
|
|
@@ -53,6 +55,7 @@ import { formatMessage } from '../str/messageformat.js';
|
|
|
53
55
|
import { TradingCalendar } from '../session/calendar.js';
|
|
54
56
|
import { SessionBars, sessionFlags } from '../session/bars.js';
|
|
55
57
|
import { afterCompletion, heikinAshi, mapToChart, periodsOf, resample } from '../security/resample.js';
|
|
58
|
+
import { position } from '../types/index.js';
|
|
56
59
|
import { STRATEGY_CONSTANTS, STRATEGY_DEFAULTS, STRATEGY_NUMBER_VARIABLES, STRATEGY_TEXT_VARIABLES, } from '../strategy/index.js';
|
|
57
60
|
import { parsePineSession } from '../time/session.js';
|
|
58
61
|
/** Bars for the current run. Module-level and REUSED across runs so builtins
|
|
@@ -84,8 +87,11 @@ function freshCollector(inputValues) {
|
|
|
84
87
|
arrowConfig: [],
|
|
85
88
|
arrows: [],
|
|
86
89
|
barColorConfig: [],
|
|
87
|
-
|
|
88
|
-
|
|
90
|
+
bgColors: [],
|
|
91
|
+
barColors: [],
|
|
92
|
+
candleConfig: [],
|
|
93
|
+
plotCandles: {},
|
|
94
|
+
plotBars: {},
|
|
89
95
|
alertConfig: [],
|
|
90
96
|
alerts: [],
|
|
91
97
|
};
|
|
@@ -135,6 +141,7 @@ export function executeScript(body, barsInput, inputs = {}, chart = {}, options
|
|
|
135
141
|
shapeConfig: c.shapeConfig,
|
|
136
142
|
arrowConfig: c.arrowConfig,
|
|
137
143
|
barColorConfig: c.barColorConfig,
|
|
144
|
+
candleConfig: c.candleConfig,
|
|
138
145
|
defaultInputs: c.defaultInputs,
|
|
139
146
|
alertConfig: c.alertConfig,
|
|
140
147
|
strategyConfig: c.strategy?.properties,
|
|
@@ -144,8 +151,11 @@ export function executeScript(body, barsInput, inputs = {}, chart = {}, options
|
|
|
144
151
|
fills: c.fills.length ? c.fills : undefined,
|
|
145
152
|
markers: c.markers.length ? c.markers : undefined,
|
|
146
153
|
arrows: c.arrows.length ? c.arrows : undefined,
|
|
147
|
-
|
|
148
|
-
|
|
154
|
+
bgColors: c.bgColors.length ? c.bgColors : undefined,
|
|
155
|
+
barColors: c.barColors.length ? c.barColors : undefined,
|
|
156
|
+
plotCandles: Object.keys(c.plotCandles).length ? c.plotCandles : undefined,
|
|
157
|
+
plotBars: Object.keys(c.plotBars).length ? c.plotBars : undefined,
|
|
158
|
+
...drawingOutputs(ctxBars.bars, chartCtx.timeUnit),
|
|
149
159
|
alerts: c.alerts.length ? c.alerts : undefined,
|
|
150
160
|
},
|
|
151
161
|
};
|
|
@@ -467,8 +477,43 @@ export function fill(a, b, ...args) {
|
|
|
467
477
|
gradient,
|
|
468
478
|
});
|
|
469
479
|
}
|
|
480
|
+
/** PineScript shape.* style -> marker shape. */
|
|
481
|
+
const MARKER_SHAPES = {
|
|
482
|
+
xcross: 'xcross',
|
|
483
|
+
cross: 'cross',
|
|
484
|
+
triangleup: 'triangleUp',
|
|
485
|
+
triangledown: 'triangleDown',
|
|
486
|
+
flag: 'flag',
|
|
487
|
+
circle: 'circle',
|
|
488
|
+
arrowup: 'arrowUp',
|
|
489
|
+
arrowdown: 'arrowDown',
|
|
490
|
+
labelup: 'labelUp',
|
|
491
|
+
labeldown: 'labelDown',
|
|
492
|
+
square: 'square',
|
|
493
|
+
diamond: 'diamond',
|
|
494
|
+
};
|
|
495
|
+
/**
|
|
496
|
+
* Marker position of a PineScript location. With location.absolute the shape sits on the price: a label pointing
|
|
497
|
+
* down above it, a label pointing up below it, the other shapes (and the characters) centred on it.
|
|
498
|
+
*/
|
|
499
|
+
function markerPosition(location, shape) {
|
|
500
|
+
switch (location) {
|
|
501
|
+
case 'abovebar':
|
|
502
|
+
return 'aboveBar';
|
|
503
|
+
case 'belowbar':
|
|
504
|
+
return 'belowBar';
|
|
505
|
+
case 'top':
|
|
506
|
+
return 'top';
|
|
507
|
+
case 'bottom':
|
|
508
|
+
return 'bottom';
|
|
509
|
+
case 'absolute':
|
|
510
|
+
return shape === 'labeldown' ? 'atPriceTop' : shape === 'labelup' ? 'atPriceBottom' : 'atPriceMiddle';
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
/** Default colour of plotshape / plotchar markers. */
|
|
514
|
+
const MARKER_COLOR = '#2962FF';
|
|
470
515
|
/** Shared emitter for plotshape()/plotchar(). Emits one marker per bar where
|
|
471
|
-
* the condition is truthy (not na, not 0). */
|
|
516
|
+
* the condition is truthy (not na, not 0). A plotchar marker has the shape 'circle' and its character in `char`. */
|
|
472
517
|
function emitMarkers(kind, condition, title, options) {
|
|
473
518
|
const c = collector();
|
|
474
519
|
const id = `${kind}${c.shapeConfig.filter((s) => s.kind === kind).length}`;
|
|
@@ -489,6 +534,25 @@ function emitMarkers(kind, condition, title, options) {
|
|
|
489
534
|
offset: options.offset,
|
|
490
535
|
forceOverlay: options.force_overlay,
|
|
491
536
|
});
|
|
537
|
+
const shapeStyle = kind === 'shape' ? style : undefined;
|
|
538
|
+
const template = {
|
|
539
|
+
position: markerPosition(location, shapeStyle),
|
|
540
|
+
shape: shapeStyle ? MARKER_SHAPES[shapeStyle] : 'circle',
|
|
541
|
+
color: options.color ?? MARKER_COLOR,
|
|
542
|
+
id,
|
|
543
|
+
};
|
|
544
|
+
if (char !== undefined)
|
|
545
|
+
template.char = char;
|
|
546
|
+
if (options.text !== undefined)
|
|
547
|
+
template.text = options.text;
|
|
548
|
+
if (options.textcolor !== undefined)
|
|
549
|
+
template.textColor = options.textcolor;
|
|
550
|
+
if (options.size !== undefined)
|
|
551
|
+
template.size = options.size;
|
|
552
|
+
if (options.tooltip !== undefined)
|
|
553
|
+
template.tooltip = options.tooltip;
|
|
554
|
+
if (options.force_overlay)
|
|
555
|
+
template.forceOverlay = true;
|
|
492
556
|
const values = condition.toArray();
|
|
493
557
|
const b = bars();
|
|
494
558
|
const off = options.offset ?? 0;
|
|
@@ -499,19 +563,8 @@ function emitMarkers(kind, condition, title, options) {
|
|
|
499
563
|
const j = i + off;
|
|
500
564
|
if (j < 0 || j >= b.length)
|
|
501
565
|
continue;
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
id,
|
|
505
|
-
location,
|
|
506
|
-
style,
|
|
507
|
-
char,
|
|
508
|
-
color: options.color,
|
|
509
|
-
text: options.text,
|
|
510
|
-
textcolor: options.textcolor,
|
|
511
|
-
size: options.size,
|
|
512
|
-
tooltip: options.tooltip,
|
|
513
|
-
price: location === 'absolute' ? v : undefined,
|
|
514
|
-
});
|
|
566
|
+
const time = b[j].time;
|
|
567
|
+
c.markers.push(location === 'absolute' ? { time, ...template, price: v } : { time, ...template });
|
|
515
568
|
}
|
|
516
569
|
}
|
|
517
570
|
/** PineScript `plotshape()` — a marker on each bar where the condition holds. */
|
|
@@ -569,7 +622,8 @@ function emitBarColors(kind, colors, options) {
|
|
|
569
622
|
c.barColorConfig.push({ id, kind, title: options.title, offset: options.offset, forceOverlay: options.force_overlay });
|
|
570
623
|
const b = bars();
|
|
571
624
|
const off = options.offset ?? 0;
|
|
572
|
-
const target = kind === 'bgcolor' ? c.
|
|
625
|
+
const target = kind === 'bgcolor' ? c.bgColors : c.barColors;
|
|
626
|
+
const forceOverlay = kind === 'bgcolor' && options.force_overlay === true;
|
|
573
627
|
for (let i = 0; i < b.length; i++) {
|
|
574
628
|
const col = typeof colors === 'string' ? colors : colors[i];
|
|
575
629
|
if (!col)
|
|
@@ -577,7 +631,7 @@ function emitBarColors(kind, colors, options) {
|
|
|
577
631
|
const j = i + off;
|
|
578
632
|
if (j < 0 || j >= b.length)
|
|
579
633
|
continue;
|
|
580
|
-
target.push({ time: b[j].time, color: col });
|
|
634
|
+
target.push(forceOverlay ? { time: b[j].time, color: col, forceOverlay } : { time: b[j].time, color: col });
|
|
581
635
|
}
|
|
582
636
|
}
|
|
583
637
|
/**
|
|
@@ -591,6 +645,87 @@ export function bgcolor(colors, options = {}) {
|
|
|
591
645
|
export function barcolor(colors, options = {}) {
|
|
592
646
|
emitBarColors('barcolor', colors, options);
|
|
593
647
|
}
|
|
648
|
+
/** Colour of bar i: undefined when the argument is not given, 'transparent' for an na entry. */
|
|
649
|
+
function candleColor(col, i) {
|
|
650
|
+
if (col === undefined)
|
|
651
|
+
return undefined;
|
|
652
|
+
if (typeof col === 'string')
|
|
653
|
+
return col;
|
|
654
|
+
return col[i] ?? 'transparent';
|
|
655
|
+
}
|
|
656
|
+
/** The bars where open, high, low and close are all not na (PineScript draws no candle / bar otherwise). */
|
|
657
|
+
function ohlcRows(o, h, l, cl) {
|
|
658
|
+
const [ov, hv, lv, cv] = [o.toArray(), h.toArray(), l.toArray(), cl.toArray()];
|
|
659
|
+
const rows = [];
|
|
660
|
+
for (let i = 0; i < bars().length; i++) {
|
|
661
|
+
const [open, high, low, close] = [ov[i], hv[i], lv[i], cv[i]];
|
|
662
|
+
if (Number.isFinite(open) && Number.isFinite(high) && Number.isFinite(low) && Number.isFinite(close)) {
|
|
663
|
+
rows.push({ i, open, high, low, close });
|
|
664
|
+
}
|
|
665
|
+
}
|
|
666
|
+
return rows;
|
|
667
|
+
}
|
|
668
|
+
const staticColor = (col) => (typeof col === 'string' ? col : undefined);
|
|
669
|
+
/**
|
|
670
|
+
* PineScript `plotcandle(open, high, low, close, title?, { color, wickcolor, bordercolor, display, force_overlay })`:
|
|
671
|
+
* candles in `result.plotCandles[id]`, the declaration in `candleConfig`. A bar with an na value has no candle.
|
|
672
|
+
*/
|
|
673
|
+
export function plotcandle(open, high, low, close, title, options = {}) {
|
|
674
|
+
const c = collector();
|
|
675
|
+
const id = `plotcandle${c.candleConfig.filter((x) => x.kind === 'candle').length}`;
|
|
676
|
+
c.candleConfig.push({
|
|
677
|
+
id,
|
|
678
|
+
kind: 'candle',
|
|
679
|
+
title,
|
|
680
|
+
color: staticColor(options.color),
|
|
681
|
+
wickColor: staticColor(options.wickcolor),
|
|
682
|
+
borderColor: staticColor(options.bordercolor),
|
|
683
|
+
display: options.display,
|
|
684
|
+
forceOverlay: options.force_overlay,
|
|
685
|
+
});
|
|
686
|
+
const b = bars();
|
|
687
|
+
c.plotCandles[id] = ohlcRows(open, high, low, close).map(({ i, ...ohlc }) => {
|
|
688
|
+
const candle = { time: b[i].time, ...ohlc };
|
|
689
|
+
const color = candleColor(options.color, i);
|
|
690
|
+
const wickColor = candleColor(options.wickcolor, i);
|
|
691
|
+
const borderColor = candleColor(options.bordercolor, i);
|
|
692
|
+
if (color !== undefined)
|
|
693
|
+
candle.color = color;
|
|
694
|
+
if (wickColor !== undefined)
|
|
695
|
+
candle.wickColor = wickColor;
|
|
696
|
+
if (borderColor !== undefined)
|
|
697
|
+
candle.borderColor = borderColor;
|
|
698
|
+
if (options.force_overlay)
|
|
699
|
+
candle.forceOverlay = true;
|
|
700
|
+
return candle;
|
|
701
|
+
});
|
|
702
|
+
}
|
|
703
|
+
/**
|
|
704
|
+
* PineScript `plotbar(open, high, low, close, title?, { color, display, force_overlay })`: OHLC bars in
|
|
705
|
+
* `result.plotBars[id]`, the declaration in `candleConfig`. A bar with an na value is not drawn.
|
|
706
|
+
*/
|
|
707
|
+
export function plotbar(open, high, low, close, title, options = {}) {
|
|
708
|
+
const c = collector();
|
|
709
|
+
const id = `plotbar${c.candleConfig.filter((x) => x.kind === 'bar').length}`;
|
|
710
|
+
c.candleConfig.push({
|
|
711
|
+
id,
|
|
712
|
+
kind: 'bar',
|
|
713
|
+
title,
|
|
714
|
+
color: staticColor(options.color),
|
|
715
|
+
display: options.display,
|
|
716
|
+
forceOverlay: options.force_overlay,
|
|
717
|
+
});
|
|
718
|
+
const b = bars();
|
|
719
|
+
c.plotBars[id] = ohlcRows(open, high, low, close).map(({ i, ...ohlc }) => {
|
|
720
|
+
const bar = { time: b[i].time, ...ohlc };
|
|
721
|
+
const color = candleColor(options.color, i);
|
|
722
|
+
if (color !== undefined)
|
|
723
|
+
bar.color = color;
|
|
724
|
+
if (options.force_overlay)
|
|
725
|
+
bar.forceOverlay = true;
|
|
726
|
+
return bar;
|
|
727
|
+
});
|
|
728
|
+
}
|
|
594
729
|
/**
|
|
595
730
|
* Runs the callback once per bar, in order, and collects the returned values
|
|
596
731
|
* into a Series. This is the escape hatch for PineScript logic the vectorized
|
|
@@ -1289,7 +1424,18 @@ export const polyline = {
|
|
|
1289
1424
|
return polylineCore.all();
|
|
1290
1425
|
},
|
|
1291
1426
|
};
|
|
1292
|
-
/**
|
|
1427
|
+
/**
|
|
1428
|
+
* PineScript `table.*`; `table.all` lists the live tables in creation order. The live tables go to `result.tables`.
|
|
1429
|
+
*/
|
|
1430
|
+
export const table = {
|
|
1431
|
+
...tableCore,
|
|
1432
|
+
get all() {
|
|
1433
|
+
return tableCore.all();
|
|
1434
|
+
},
|
|
1435
|
+
};
|
|
1436
|
+
/** PineScript `position.*` constants (table positions). */
|
|
1437
|
+
export { position };
|
|
1438
|
+
/** PineScript `text.format_*`, `text.align_*` and `text.wrap_*` constants. */
|
|
1293
1439
|
export const text = { ...textCore };
|
|
1294
1440
|
/**
|
|
1295
1441
|
* PineScript `chart.point.*`. `chart.point.now(price?)` is the point of the current bar
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/script/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAwBH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,SAAS,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,YAAY,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,YAAY,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,cAAc,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,KAAK,aAAa,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAoB,MAAM,wBAAwB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,YAAY,EAAqB,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEvG,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EACzB,uBAAuB,GAgBxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AA8EtD;+EAC+E;AAC/E,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;AAEhC,IAAI,GAAG,GAAqB,IAAI,CAAC;AAEjC,SAAS,SAAS;IAChB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,qEAAqE;YACnE,kDAAkD,CACrD,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,cAAc,CAAC,WAAoC;IAC1D,OAAO;QACL,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,IAAI;QACb,WAAW;QACX,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE,IAAI,GAAG,EAAE;QACnB,aAAa,EAAE,EAAE;QACjB,UAAU,EAAE,EAAE;QACd,KAAK,EAAE,EAAE;QACT,WAAW,EAAE,EAAE;QACf,KAAK,EAAE,EAAE;QACT,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,EAAE;QACf,MAAM,EAAE,EAAE;QACV,cAAc,EAAE,EAAE;QAClB,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,EAAE;QACf,MAAM,EAAE,EAAE;KACX,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,SAAS,MAAM,CAAC,KAAyB,EAAE,QAAgB,EAAE,KAAkB;IAC7E,MAAM,IAAI,GACR,CAAC,KAAK,IAAI,EAAE,CAAC;SACV,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC;IACzC,IAAI,EAAE,GAAG,IAAI,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;QAAE,EAAE,GAAG,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC;IACxD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACd,OAAO,EAAE,CAAC;AACZ,CAAC;AAgBD,IAAI,aAAa,GAAkB,EAAE,CAAC;AAEtC;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAgB,EAChB,SAAgB,EAChB,SAAkC,EAAE,EACpC,QAAsB,EAAE,EACxB,UAAyB,EAAE;IAE3B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC1B,QAAQ,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;IACxB,aAAa,GAAG,OAAO,CAAC;IACxB,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,EAAE,CAAC;IAChB,QAAQ,CAAC,WAAW,EAAE,CAAC;IACvB,IAAI,CAAC;QACH,IAAI,EAAE,CAAC;QACP,MAAM,CAAC,GAAG,GAAG,CAAC;QACd,OAAO;YACL,QAAQ,EAAE;gBACR,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,MAAM,EAAE,CAAC,CAAC,MAAM;aACjB;YACD,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,cAAc,EAAE,CAAC,CAAC,cAAc;YAChC,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,cAAc,EAAE,CAAC,CAAC,QAAQ,EAAE,UAAU;YACtC,MAAM,EAAE;gBACN,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE;gBAClG,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBAC3C,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;gBACjD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBAC9C,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;gBACpD,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;gBACvD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;aAC/C;SACF,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,GAAG,GAAG,IAAI,CAAC;IACb,CAAC;AACH,CAAC;AAmBD,iEAAiE;AACjE,MAAM,UAAU,SAAS,CAAC,KAAa,EAAE,UAA4B,EAAE;IACrE,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;IACtB,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IACxB,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;IAChB,CAAC,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAClC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC;IACpC,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAChC,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC1B,gBAAgB,CAAC;QACf,IAAI,EAAE,OAAO,CAAC,eAAe;QAC7B,KAAK,EAAE,OAAO,CAAC,gBAAgB;QAC/B,GAAG,EAAE,OAAO,CAAC,eAAe;QAC5B,QAAQ,EAAE,OAAO,CAAC,mBAAmB;KACtC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,OAAO,CAAC,CAAY,EAAE,IAA8B;IAC3D,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,mCAAmC,CAAC,CAAC,WAAW,mCAAmC,CAAC,CAAC;IAC9G,CAAC;IACD,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;AACvB,CAAC;AAqBD,uFAAuF;AACvF,SAAS,MAAM,CAAC,IAAkB;IAChC,MAAM,GAAG,GAAyB,EAAE,CAAC;IACrC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACrD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;QAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IACxD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC3D,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC3D,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC3D,OAAO,GAAG,CAAC;AACb,CAAC;AAED;8DAC8D;AAC9D,SAAS,aAAa,CAAI,MAA+B,EAAE,UAAkB;IAC3E,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;IACtB,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAM,CAAC;AAC5D,CAAC;AAED,SAAS,eAAe,CAAC,IAAqB,EAAE,MAAc,EAAE,KAAc,EAAE,OAA4B,EAAE;IAC5G,MAAM,CAAC,GAAG,aAAa,CACrB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAC7F,SAAS,IAAI,EAAE,CAChB,CAAC;IACF,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAC5C,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,GAAG,CAAC,MAAc,EAAE,KAAc,EAAE,OAA4B,EAAE;QAChE,OAAO,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,KAAK,CAAC,MAAc,EAAE,KAAc,EAAE,OAA4B,EAAE;QAClE,OAAO,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,CAAC,MAAe,EAAE,KAAc,EAAE,OAAqB,EAAE;QAC3D,OAAO,aAAa,CAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IAChG,CAAC;IACD,MAAM,CAAC,MAAc,EAAE,KAAc,EAAE,OAA2B,EAAE;QAClE,OAAO,aAAa,CAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IAC1H,CAAC;IACD;;;OAGG;IACH,KAAK,CAAC,MAAc,EAAE,KAAc,EAAE,OAAqB,EAAE;QAC3D,OAAO,aAAa,CAAS,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;IAC5H,CAAC;IACD,0DAA0D;IAC1D,MAAM,CAAC,SAAiB,OAAO,EAAE,KAAc,EAAE,OAAqB,EAAE;QACtE,MAAM,IAAI,GAAG,aAAa,CAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;QACvG,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,0FAA0F;IAC1F,SAAS,CAAC,MAAc,EAAE,KAAc,EAAE,OAA2B,EAAE;QACrE,OAAO,aAAa,CAClB,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAC5E,iBAAiB,CAClB,CAAC;IACJ,CAAC;IACD,uDAAuD;IACvD,OAAO,CAAC,MAAc,EAAE,KAAc,EAAE,OAA2B,EAAE;QACnE,OAAO,aAAa,CAClB,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAC1E,eAAe,CAChB,CAAC;IACJ,CAAC;IACD,yGAAyG;IACzG,IAAI,CAAC,MAAc,EAAE,KAAc,EAAE,OAAqB,EAAE;QAC1D,MAAM,CAAC,GAAG,aAAa,CAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QACjG,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5C,CAAC;CACF,CAAC;AAEF,gFAAgF;AAEhF,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACrD,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACrD,MAAM,CAAC,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACnD,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACvD,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AACzD,MAAM,CAAC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AACpE,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/E,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1F,sEAAsE;AACtE,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC;IAAE,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;AAEhE,MAAM,OAAO,GAA2B,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAEpG,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;AAChC,CAAC;AAED,gFAAgF;AAEhF,MAAM,IAAI,GAAG,GAAU,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;AAEvC;yEACyE;AACzE,SAAS,UAAU,CAAC,OAA6B;IAC/C,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;IACjB,IAAI,MAAM,GAAa,EAAE,CAAC;IAC1B,OAAO,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QAC3C,IAAI,OAAO,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YACjC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC5B,CAAC;QACD,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAED;yEACyE;AACzE,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,GAAG,QAAQ;IACX,EAAE,EAAE,CAAC,WAAoB,KAAK,EAAU,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,QAAQ,CAAC;IACxE,GAAG,EAAE,CAAC,MAAc,EAAU,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC;IAC7D,GAAG,EAAE,CAAC,KAAc,EAAE,GAAY,EAAE,GAAY,EAAU,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC;IAClG,GAAG,EAAE,CAAC,MAAe,EAAU,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC;IAC9D,UAAU,EAAE,CAAC,MAAc,EAAE,SAAiB,EAAoB,EAAE,CAClE,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC;IAChD,GAAG,EAAE,CAAC,QAAgB,EAAE,YAAoB,EAA4B,EAAE,CACxE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,YAAY,CAAC;IAC9C,EAAE,EAAE,CAAC,MAAc,EAAE,MAAc,EAAE,IAAY,EAAE,YAAsB,EAA4B,EAAE,CACrG,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,CAAC;IACzD,GAAG,EAAE,CAAC,MAAc,EAAE,MAAe,EAAE,IAAa,EAAE,YAAsB,EAAU,EAAE,CACtF,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,CAAC;IAC1D,QAAQ,EAAE,CACR,iBAAyB,EACzB,WAAmB,EACnB,mBAA2B,EAC3B,YAAoB,EACsB,EAAE,CAC5C,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,iBAAiB,EAAE,WAAW,EAAE,mBAAmB,EAAE,YAAY,CAAC;IAC9F,4EAA4E;IAC5E,OAAO,EAAE,CAAC,cAA+B,EAAE,MAAe,EAAU,EAAE,CACpE,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,MAAO,CAAC;IACzH,yEAAyE;IACzE,MAAM,EAAE,CAAC,cAA+B,EAAE,MAAe,EAAU,EAAE,CACnE,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,MAAO,CAAC;IACtH,+GAA+G;IAC/G,WAAW,EAAE,CAAC,cAA+B,EAAE,MAAe,EAAU,EAAE,CACxE,OAAO,cAAc,KAAK,QAAQ;QAChC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC;QAC5C,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,cAAc,EAAE,MAAO,CAAC;IACnD,4GAA4G;IAC5G,UAAU,EAAE,CAAC,cAA+B,EAAE,MAAe,EAAU,EAAE,CACvE,OAAO,cAAc,KAAK,QAAQ;QAChC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,cAAc,CAAC;QAC1C,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,EAAE,MAAO,CAAC;IAClD;yGACqG;IACrG,IAAI,EAAE,CAAC,CAAC,MAAc,EAAE,MAAe,EAAE,UAAmB,EAAqC,EAAE;QACjG,MAAM,CAAC,GAAG,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,6CAA6C;QACjF,OAAO,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IACzH,CAAC,CAGA;IACD,qFAAqF;IACrF,GAAG,EAAE,CAAC,MAAc,EAAE,MAAc,EAAU,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IACrF;oFACgF;IAChF,SAAS,EAAE,CAAC,YAA6B,EAAE,WAAmB,EAAE,SAAkB,EAAU,EAAE,CAC5F,OAAO,YAAY,KAAK,QAAQ;QAC9B,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,YAAY,EAAE,WAAW,CAAC;QACrD,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,WAAW,EAAE,SAAU,CAAC;IAC/D,uGAAuG;IACvG,QAAQ,EAAE,CAAC,YAA6B,EAAE,WAAmB,EAAE,SAAkB,EAAU,EAAE,CAC3F,OAAO,YAAY,KAAK,QAAQ;QAC9B,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,YAAY,EAAE,WAAW,CAAC;QACnD,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,WAAW,EAAE,SAAU,CAAC;IAC9D,oEAAoE;IACpE,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;IAC7B,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;IAC7B,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;IACrC,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;IAC7B,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;IAC7B,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;IAC7B,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;IAC7B,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;CAChC,CAAC;AAMF,MAAM,UAAU,MAAM,CAAC,MAA0C;IAC/D,OAAO,MAAM,YAAY,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AACrH,CAAC;AASD,SAAS,SAAS,CAAC,IAAY,EAAE,SAAiB,EAAE,UAAmB;IACrE,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,+FAA+F;AAC/F,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,GAAG,SAAS;IACZ,GAAG,EAAE,SAAS,CAAC,SAAS;IACxB,IAAI,EAAE,SAAS;CAChB,CAAC;AAiBF,iFAAiF;AACjF,SAAS,QAAQ,CAAC,MAAc,EAAE,KAAc,EAAE,UAA6B,EAAE;IAC/E,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;IACtB,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACxE,MAAM,WAAW,GAAG,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;IACnH,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QAChB,EAAE;QACF,KAAK,EAAE,KAAK,IAAI,EAAE;QAClB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,YAAY,EAAE,OAAO,CAAC,aAAa;KACpC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;IAChC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;IACjB,MAAM,IAAI,GAAgB,EAAE,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS,CAAC,qCAAqC;QACnG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAClG,CAAC;IACD,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACnB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;IAC1C,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE,QAAQ;IACtB,cAAc,EAAE,UAAU;IAC1B,gBAAgB,EAAE,YAAY;IAC9B,sBAAsB,EAAE,kBAAkB;IAC1C,eAAe,EAAE,WAAW;IAC5B,aAAa,EAAE,SAAS;IACxB,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE,QAAQ;IACtB,aAAa,EAAE,SAAS;IACxB,WAAW,EAAE,OAAO;IACpB,eAAe,EAAE,OAAO;IACxB,gBAAgB,EAAE,QAAQ;IAC1B,gBAAgB,EAAE,QAAQ;CAClB,CAAC,CAAC;AASZ,iGAAiG;AACjG,SAAS,SAAS,CAAC,KAAa,EAAE,KAAc,EAAE,UAA8B,EAAE;IAChF,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;IACtB,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;IAC1C,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;QACjB,EAAE;QACF,KAAK;QACL,KAAK;QACL,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,QAAQ;QACxC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAC;IACH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC/B,CAAC;AAED,uHAAuH;AACvH,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE;IAC5C,WAAW,EAAE,OAAO;IACpB,YAAY,EAAE,QAAQ;IACtB,YAAY,EAAE,QAAQ;CACd,CAAC,CAAC;AAcZ,SAAS,YAAY,CAAC,CAAkB,EAAE,CAAS;IACjD,OAAO,CAAC,YAAY,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACtF,CAAC;AAED,SAAS,YAAY,CAAC,CAAkB,EAAE,CAAS;IACjD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IAC/E,OAAO,IAAI,KAAK,CAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;AACrD,CAAC;AAuBD,MAAM,UAAU,IAAI,CAAC,CAAa,EAAE,CAAa,EAAE,GAAG,IAAe;IACnE,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;IACtB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,IAAI,MAA4B,CAAC;IACjC,IAAI,WAA+B,CAAC;IACpC,IAAI,KAAyB,CAAC;IAC9B,IAAI,QAAkC,CAAC;IACvC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;QACzD,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;QAC9B,QAAQ,GAAG;YACT,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;YAChC,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAoB,EAAE,CAAC,CAAC;YACxD,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAoB,EAAE,CAAC,CAAC;YACrD,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAoB,EAAE,CAAC,CAAC;SACzD,CAAC;QACF,KAAK,GAAG,IAAI,CAAC,CAAC,CAAuB,CAAC;IACxC,CAAC;SAAM,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChF,MAAM,OAAO,GAAG,KAA0B,CAAC;QAC3C,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAClE,WAAW,GAAG,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IACxB,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,KAAwB,CAAC;QACvC,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtE,WAAW,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5D,KAAK,GAAG,IAAI,CAAC,CAAC,CAAuB,CAAC;IACxC,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7C,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;YAChB,EAAE,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE;YAChC,KAAK,EAAE,CAAC,CAAC,EAAE;YACX,KAAK,EAAE,CAAC,CAAC,EAAE;YACX,KAAK,EAAE,WAAW;YAClB,MAAM,EAAE,MAAM;YACd,QAAQ;YACR,KAAK;SACN,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QACX,KAAK,EAAE,CAAC,CAAC,EAAE;QACX,KAAK,EAAE,CAAC,CAAC,EAAE;QACX,OAAO,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE;QACtC,MAAM,EAAE,MAAM;QACd,QAAQ;KACT,CAAC,CAAC;AACL,CAAC;AAqBD;+CAC+C;AAC/C,SAAS,WAAW,CAClB,IAAsB,EACtB,SAAiB,EACjB,KAAyB,EACzB,OAA2C;IAE3C,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;IACtB,MAAM,EAAE,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;IAC3E,MAAM,KAAK,GAAwB,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC3F,MAAM,IAAI,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,UAAU,CAAC;IAChD,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;QACjB,EAAE;QACF,IAAI;QACJ,KAAK;QACL,KAAK,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAE,KAAoB,CAAC,CAAC,CAAC,SAAS;QAC3D,IAAI;QACJ,QAAQ;QACR,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,YAAY,EAAE,OAAO,CAAC,aAAa;KACpC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;IACnC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;IACjB,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,SAAS;QAC5D,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;YAAE,SAAS;QACrC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI;YAChB,EAAE;YACF,QAAQ;YACR,KAAK;YACL,IAAI;YACJ,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;SAC/C,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,SAAS,CAAC,SAAiB,EAAE,KAAc,EAAE,UAA4B,EAAE;IACzF,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,QAAQ,CAAC,SAAiB,EAAE,KAAc,EAAE,UAA2B,EAAE;IACvF,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACjD,CAAC;AAkBD;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,MAAc,EAAE,KAAc,EAAE,UAA4B,EAAE;IACtF,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;IACtB,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,CAAC,GAAmD,EAAE,QAAgB,EAAE,CAAS,EAAsB,EAAE,CACpH,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAClF,MAAM,SAAS,GAAG,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACxF,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;QACjB,EAAE;QACF,KAAK;QACL,OAAO;QACP,SAAS;QACT,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,CAAC;QACjC,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,GAAG;QACnC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,YAAY,EAAE,OAAO,CAAC,aAAa;KACpC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;IAChC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;IACjB,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,SAAS;QAC5D,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;YAAE,SAAS;QACrC,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QAClG,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS,CAAC,qBAAqB;QACxD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;wEAEwE;AACxE,SAAS,aAAa,CACpB,IAA4B,EAC5B,MAA0C,EAC1C,OAAqE;IAErE,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;IACtB,MAAM,EAAE,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;IAC9E,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IACvH,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;IACjB,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5D,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;YAAE,SAAS;QACrC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,OAAO,CACrB,MAA0C,EAC1C,UAAwE,EAAE;IAE1E,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,QAAQ,CACtB,MAA0C,EAC1C,UAA8B,EAAE;IAEhC,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAC7C,CAAC;AA0BD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,8FAA8F;AAC9F,MAAM,aAAa,GAAG,GAAG,CAAC;AAC1B,MAAM,cAAc,GAAG,QAAQ,CAAC;AAehC,MAAM,UAAU,OAAO,CAAC,EAA8C;IACpE,SAAS,EAAE,CAAC,CAAC,oEAAoE;IACjF,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;IACjB,MAAM,GAAG,GAAa,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC1C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IACjD,IAAI,YAAY,GAA6C,IAAI,CAAC;IAClE,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,MAAM,GAAG,GAAe;QACtB,IAAI,CAAC;YACH,OAAO,GAAG,CAAC;QACb,CAAC;QACD,CAAC,EAAE,CAAC,CAAC,MAAM;QACX,IAAI,IAAI;YACN,OAAO,CAAC,CAAC,GAAG,CAAE,CAAC,IAAc,CAAC;QAChC,CAAC;QACD,IAAI,IAAI;YACN,OAAO,CAAC,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC;QACtB,CAAC;QACD,IAAI,IAAI;YACN,OAAO,CAAC,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC;QACtB,CAAC;QACD,IAAI,GAAG;YACL,OAAO,CAAC,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC;QACrB,CAAC;QACD,IAAI,KAAK;YACP,OAAO,CAAC,CAAC,GAAG,CAAE,CAAC,KAAK,CAAC;QACvB,CAAC;QACD,IAAI,MAAM;YACR,OAAO,CAAC,CAAC,GAAG,CAAE,CAAC,MAAM,IAAI,GAAG,CAAC;QAC/B,CAAC;QACD,GAAG,CAAC,GAAW,EAAE,SAAiB,CAAC;YACjC,IAAI,MAAM,GAAG,CAAC;gBAAE,MAAM,IAAI,UAAU,CAAC,2CAA2C,MAAM,4BAA4B,CAAC,CAAC;YACpH,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC7B,IAAI,CAAC,GAAG,aAAa;oBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC7D,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC9B,IAAI,CAAC,MAAM;oBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC1F,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM;oBAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAC3C,CAAC;YACD,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;gBACrB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACvB,CAAC;YACD,MAAM,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC5D,CAAC;QACD,IAAI,CAAC,SAAiB,CAAC;YACrB,MAAM,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YACpC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAChC,CAAC;KACF,CAAC;IACF,IAAI,CAAC;QACH,KAAK,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;YACpC,IAAI,YAAY,IAAI,YAAY,CAAC,GAAG,KAAK,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;YACxG,UAAU,GAAG,GAAG,CAAC;YACjB,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YAClB,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAClF,kEAAkE;YAClE,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;gBACtC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;gBACxB,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBACpB,MAAM,IAAI,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC,CAAC;oBACpF,IAAI,IAAI,GAAG,aAAa,IAAI,CAAC,YAAY;wBAAE,YAAY,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;oBAC3F,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;gBACrB,CAAC;gBACD,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACpB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC;YAAS,CAAC;QACT,UAAU,GAAG,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACxC,CAAC;AAED,yEAAyE;AACzE,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC;AAEpB,sFAAsF;AAEtF,0FAA0F;AAC1F,SAAS,WAAW,CAAC,MAAc;IACjC,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC,QAAQ,CAAC;IACjC,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,6CAA6C,CAAC,CAAC;IAClF,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CACb,GAAG,MAAM,gGAAgG,CAC1G,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC;AAED,+FAA+F;AAC/F,SAAS,WAAW,CAAC,MAAc;IACjC,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,4CAA4C,CAAC,CAAC;IACxG,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,6GAA6G;AAC7G,SAAS,KAAK,CAAmB,OAAU;IACzC,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAAE,SAAS;QACxF,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACnB,CAAC;IACD,OAAO,GAAQ,CAAC;AAClB,CAAC;AAED,8GAA8G;AAC9G,SAAS,UAAU,CAAC,MAAc;IAChC,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,0CAA0C,CAAC,CAAC;IACtG,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,kGAAkG;AAClG,MAAM,2BAA2B,GAAkC,IAAI,GAAG,CAAC,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC,CAAC;AAEpH,SAAS,gBAAgB,CAAC,IAAsB;IAC9C,MAAM,MAAM,GAAG,YAAY,IAAI,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,2BAA2B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACnG,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,0CAA0C,CAAC,CAAC;IACrG,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,QAAQ,CAAC,IAAsB;IACtC,MAAM,MAAM,GAAG,cAAc,CAAC,iBAAiB,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,IAAI,4CAA4C,CAAC,CAAC;IAC1G,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC;AAED,oFAAoF;AACpF,SAAS,eAAe,CAAC,KAAa,EAAE,UAA2B,EAAE;IACnE,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;IACtB,OAAO,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IACvB,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;IAChB,CAAC,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAClC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC;IACrC,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAChC,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC1B,gBAAgB,CAAC;QACf,IAAI,EAAE,OAAO,CAAC,eAAe;QAC7B,KAAK,EAAE,OAAO,CAAC,gBAAgB;QAC/B,GAAG,EAAE,OAAO,CAAC,eAAe;QAC5B,QAAQ,EAAE,OAAO,CAAC,mBAAmB;KACtC,CAAC,CAAC;IACH,MAAM,UAAU,GAAuB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAChE,MAAM,MAAM,GAAG,UAAgD,CAAC;IAChE,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC;QAClE,MAAM,KAAK,GAAI,OAAmC,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC/C,CAAC;IACD,MAAM,OAAO,GAAG,aAAa,CAAC,cAAc,CAAC;IAC7C,CAAC,CAAC,QAAQ,GAAG;QACX,UAAU;QACV,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;QACtE,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,KAAK;KACd,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,EAA8C;IACrE,MAAM,GAAG,GAAG,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,cAAc,CAAC,oBAAoB,CAAC,CAAC;IACpD,IAAI,GAAG,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAChF,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;IAClB,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACnB,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC;YACH,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACf,CAAC;gBAAS,CAAC;YACT,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;YACnB,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAmCD,MAAM,eAAe,GAAG;IACtB,GAAG,kBAAkB;IACrB,OAAO,EAAE,eAAe;IACxB,KAAK,CAAC,EAAU,EAAE,SAA4B,EAAE,UAAgC,EAAE;QAChF,WAAW,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,KAAK,CAAC,EAAU,EAAE,SAA4B,EAAE,UAAgC,EAAE;QAChF,WAAW,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,CAAC,EAAU,EAAE,UAA+B,EAAE;QAChD,WAAW,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,CAAC;IACD,KAAK,CAAC,EAAU,EAAE,UAAgC,EAAE;QAClD,WAAW,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,SAAS,CAAC,UAAmC,EAAE;QAC7C,WAAW,CAAC,sBAAsB,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,MAAM,CAAC,EAAU;QACf,WAAW,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,UAAU;QACR,WAAW,CAAC,uBAAuB,CAAC,CAAC,UAAU,EAAE,CAAC;IACpD,CAAC;IACD,SAAS,CAAC,KAAa;QACrB,OAAO,UAAU,CAAC,sBAAsB,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IACD,WAAW,CAAC,KAAa;QACvB,OAAO,UAAU,CAAC,wBAAwB,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC;IACD,iBAAiB,CAAC,UAAkB;QAClC,MAAM,MAAM,GAAG,UAAU,CAAC,8BAA8B,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,eAAe;YAAE,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;QACrH,OAAO,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,EAAE;QACJ,cAAc,EAAE,CAAC,SAAgC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC;QACrG,kBAAkB,EAAE,CAAC,KAAa,EAAE,aAAsB,EAAE,EAAE,CAC5D,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,oBAA6B,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QAChF,YAAY,EAAE,CAAC,KAAa,EAAE,IAA2B,EAAE,aAAsB,EAAE,EAAE,CACnF,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,cAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;QAChF,0BAA0B,EAAE,CAAC,KAAa,EAAE,aAAsB,EAAE,EAAE,CACpE,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,4BAAqC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QACxF,iBAAiB,EAAE,CAAC,KAAa,EAAE,IAA2B,EAAE,aAAsB,EAAE,EAAE,CACxF,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,mBAA4B,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;QACrF,iBAAiB,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,CAAC;KAC7F;CACF,CAAC;AAEF,MAAM,eAAe,GAA0B,EAAE,CAAC;AAClD,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,yBAAyB,EAAE,GAAG,uBAAuB,CAAC,EAAE,CAAC;IAC9E,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;AAClF,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,OAAyB,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,EAC7G,eAAe,CACD,CAAC;AA4CjB,IAAI,QAAQ,GAAiB,EAAE,CAAC;AAEhC,SAAS,cAAc;IACrB,SAAS,EAAE,CAAC;IACZ,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,gGAAgG,CAAC,CAAC;IACpH,CAAC;IACD,OAAO,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,gBAAgB;IACvB,SAAS,EAAE,CAAC;IACZ,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,kGAAkG,CAAC,CAAC;IACtH,CAAC;IACD,OAAO,QAAQ,CAAC,QAAQ,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,GAAG,aAAa;IAChB,IAAI,MAAM;QACR,OAAO,cAAc,EAAE,CAAC,MAAM,CAAC;IACjC,CAAC;IACD,IAAI,WAAW;QACb,OAAO,cAAc,EAAE,CAAC,MAAM,CAAC;IACjC,CAAC;IACD,IAAI,UAAU;QACZ,OAAO,cAAc,EAAE,CAAC,UAAU,CAAC;IACrC,CAAC;IACD,IAAI,UAAU;QACZ,OAAO,cAAc,EAAE,CAAC,UAAU,CAAC;IACrC,CAAC;IACD,IAAI,OAAO;QACT,OAAO,cAAc,EAAE,CAAC,OAAO,CAAC;IAClC,CAAC;IACD,IAAI,QAAQ;QACV,OAAO,cAAc,EAAE,CAAC,QAAQ,CAAC;IACnC,CAAC;IACD,IAAI,SAAS;QACX,OAAO,cAAc,EAAE,CAAC,SAAS,CAAC;IACpC,CAAC;IACD,IAAI,SAAS;QACX,OAAO,cAAc,EAAE,CAAC,SAAS,CAAC;IACpC,CAAC;IACD,IAAI,SAAS;QACX,OAAO,cAAc,EAAE,CAAC,SAAS,CAAC;IACpC,CAAC;IACD,IAAI,OAAO;QACT,OAAO,cAAc,EAAE,CAAC,OAAO,CAAC;IAClC,CAAC;IACD,IAAI,KAAK;QACP,OAAO,cAAc,EAAE,CAAC,KAAK,CAAC;IAChC,CAAC;IACD,qGAAqG;IACrG,MAAM,CAAC,EAAU;QACf,OAAO,QAAQ,CAAC,EAAE,IAAI,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IACD,6FAA6F;IAC7F,UAAU,CAAC,EAAW;QACpB,OAAO,aAAa,CAAC,UAAU,CAAC,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAChG,CAAC;CACF,CAAC;AAEF,mEAAmE;AACnE,SAAS,cAAc,CAAC,GAA6C;IACnE,SAAS,EAAE,CAAC;IACZ,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,WAAW,GAAG,iEAAiE,GAAG,MAAM,CAAC,CAAC;IAC5G,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,IAAI,OAAO;QACT,OAAO,cAAc,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,UAAU;QACZ,OAAO,cAAc,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC;IACD,IAAI,WAAW;QACb,OAAO,cAAc,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,QAAQ;QACV,OAAO,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IACD,IAAI,QAAQ;QACV,SAAS,EAAE,CAAC;QACZ,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,4FAA4F,CAAC,CAAC;QAChH,CAAC;QACD,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC3B,CAAC;IACD,IAAI,OAAO;QACT,SAAS,EAAE,CAAC;QACZ,OAAO,QAAQ,CAAC,WAAW,IAAI,SAAS,CAAC;IAC3C,CAAC;CACF,CAAC;AAQF,SAAS,QAAQ,CAAC,EAA8C;IAC9D,OAAO,CAAC,CAAC,IAAqB,EAAE,QAAiB,EAAE,EAAE;QACnD,MAAM,EAAE,GAAG,QAAQ,IAAI,gBAAgB,EAAE,CAAC;QAC1C,OAAO,IAAI,YAAY,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACjH,CAAC,CAAqB,CAAC;AACzB,CAAC;AAED,2FAA2F;AAC3F,MAAM,CAAC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC5C,4FAA4F;AAC5F,MAAM,CAAC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC9C,iGAAiG;AACjG,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACxD,iGAAiG;AACjG,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACxD,gGAAgG;AAChG,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACtD,2FAA2F;AAC3F,MAAM,CAAC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC5C,6FAA6F;AAC7F,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAChD,6FAA6F;AAC7F,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAiBhD,MAAM,UAAU,SAAS,CAAC,KAAsB,EAAE,GAAG,IAA+B;IAClF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,IAAmD,CAAC;QAC7E,OAAO,QAAQ,CAAC,SAAS,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,IAA2D,CAAC;IACxF,OAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,wHAAwH;AACxH,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,OAAe,EAAE,QAAiB;IACxE,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,IAAI,gBAAgB,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,yGAAyG;AACzG,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,GAAG,OAAO;IACV,qEAAqE;IACrE,QAAQ,EAAE,CAAC,CAAC,KAAc,EAAE,MAAe,EAAE,OAAgB,EAAE,EAAE,CAC/D,OAAO,CAAC,QAAQ,CAAC,KAAc,EAAE,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAA4B;IACrI,WAAW,CAAC,IAAY,EAAE,SAAiB,wBAAwB,EAAE,QAAiB;QACpF,OAAO,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,IAAI,gBAAgB,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,CAAC,OAAe,EAAE,GAAG,IAAe;QACxC,OAAO,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACxD,CAAC;CACF,CAAC;AAEF,gFAAgF;AAEhF,0CAA0C;AAC1C,SAAS,OAAO,CAAC,GAAQ;IACvB,OAAQ,GAAG,CAAC,IAAe,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,MAAM,GAAG,CAAC,CAAuB,EAAe,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEtG,IAAI,YAAY,GAA0E,IAAI,CAAC;AAE/F,kGAAkG;AAClG,SAAS,WAAW;IAClB,MAAM,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAC9B,MAAM,EAAE,GAAG,cAAc,EAAE,CAAC,MAAM,CAAC;IACnC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;IAC1G,CAAC;IACD,IAAI,YAAY,EAAE,GAAG,KAAK,QAAQ,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACnF,YAAY,GAAG;YACb,GAAG,EAAE,QAAQ;YACb,IAAI,EAAE,IAAI,WAAW,CAAC,IAAI,eAAe,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;YAC1D,OAAO,EAAE,IAAI,WAAW,CAAC,IAAI,eAAe,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,GAAG,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;SACjG,CAAC;IACJ,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,OAAgB,EAAE,QAAiB;IACtD,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACxD,MAAM,EAAE,GAAG,QAAQ,IAAI,gBAAgB,EAAE,CAAC;IAC1C,6GAA6G;IAC7G,qEAAqE;IACrE,IAAI,OAAO,KAAK,SAAS,IAAI,gBAAgB,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QAChE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAQ,CAAC;QAC3G,OAAO,EAAE,IAAI,EAAE,IAAI,WAAW,CAAC,IAAI,eAAe,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC1I,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;IACpF,OAAO,EAAE,IAAI,EAAE,IAAI,WAAW,CAAC,IAAI,eAAe,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC9H,CAAC;AAED,SAAS,MAAM,CAAC,EAAqD;IACnE,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACxC,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,wGAAwG;AACxG,SAAS,cAAc,CAAyC,MAAc,EAAE,EAAK;IACnF,MAAM,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IAC5C,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC1B,OAAO,EAAgB,CAAC;AAC1B,CAAC;AAED,SAAS,YAAY,CAAC,EAAW,EAAE,OAAgB,EAAE,QAAiB;IACpE,SAAS,EAAE,CAAC;IACZ,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,EAAE,IAAI,cAAc,EAAE,CAAC,MAAM,CAAC;IACtD,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;AAC1F,CAAC;AAED,SAAS,iBAAiB,CAAC,EAAW,EAAE,OAAgB,EAAE,QAAiB;IACzE,SAAS,EAAE,CAAC;IACZ,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,EAAE,IAAI,cAAc,EAAE,CAAC,MAAM,CAAC;IACtD,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;AAC3F,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AAEzF;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,cAAc,CACtC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,EAAE,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC,EAC9G,iBAAiB,CAClB,CAAC;AAEF,qFAAqF;AACrF,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzG,SAAS,QAAQ,CAAC,EAAU;IAC1B,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3G,CAAC;AAED,SAAS,IAAI,CAAC,GAAuB;IACnC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC;IAC3E,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,kFAAkF;AAClF,SAAS,OAAO,CAAC,IAAuC;IACtD,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;IAC9B,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9F,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,CAAS,EAAW,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC;AAElG;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,IAAI,OAAO,KAAa,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,IAAI,MAAM,KAAa,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,IAAI,WAAW,KAAa,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;IACxG,IAAI,UAAU,KAAa,OAAO,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC1D,IAAI,SAAS,KAAa,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,IAAI,KAAK,KAAa,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC;IACvG,IAAI,sBAAsB;QACxB,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACtB,MAAM,aAAa,GAAG,QAAQ,CAAC,gBAAgB,KAAK,IAAI,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC;YACvF,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,IAAI,UAAU,KAAa,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACvD,IAAI,SAAS,KAAa,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACrD,IAAI,QAAQ,KAAa,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACnD,IAAI,WAAW,KAAa,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACzD,IAAI,YAAY,KAAa,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,kBAAkB,KAAa,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACvE,IAAI,iBAAiB,KAAa,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;CACtE,CAAC;AAEF,iFAAiF;AAEjF,+DAA+D;AAC/D,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,YAAY,EAAE,cAAc;IAC5B,aAAa,EAAE,eAAe;CACtB,CAAC;AAEX,MAAM,WAAW,GAAG,aAAa,CAAC;AAElC,+FAA+F;AAC/F,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,UAAU,CAAC,MAAc;QACvB,OAAO,WAAW,GAAG,MAAM,CAAC;IAC9B,CAAC;IACD,QAAQ,CAAC,MAAc;QACrB,OAAO,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACpF,CAAC;CACF,CAAC;AAKF,SAAS,QAAQ,CAAC,KAAgC,EAAE,MAAc;IAChE,IAAI,CAAC,CAAC,KAAK,YAAY,MAAM,CAAC;QAAE,OAAO,IAAI,KAAK,CAAS,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACrF,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CACb,mFAAmF;YACjF,yEAAyE,CAC5E,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC;AACjC,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,QAAQ,CACf,MAAc,EACd,SAAiB,EACjB,UAAmB,EACnB,OAAe,QAAQ,CAAC,QAAQ,EAChC,YAAoB,QAAQ,CAAC,aAAa;IAE1C,SAAS,EAAE,CAAC;IACZ,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAChE,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,8DAA8D,CAAC,CAAC;IAC9G,CAAC;IACD,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IAChE,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,KAAK,CAAC,gCAAgC,EAAE,wCAAwC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;IAC9G,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAC/B,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACrC,IAAI,GAAU,CAAC;IACf,IAAI,KAAe,CAAC;IACpB,IAAI,MAAgB,CAAC;IACrB,IAAI,EAAE,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;QACxB,GAAG,GAAG,SAAS,CAAC;QAChB,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,GAAG,KAAK,CAAC;IACjB,CAAC;SAAM,CAAC;QACN,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,EAAE,CAAC;QAChD,kFAAkF;QAClF,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QACjE,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;QAC3E,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/F,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACnD,gGAAgG;QAChG,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,CAAC,CAAU,EAAE,CAAS,EAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3D,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACxF,CAAC;IACD,IAAI,MAAM;QAAE,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAElC,MAAM,QAAQ,GAAG,QAAQ,CAAC;IAC1B,IAAI,MAAS,CAAC;IACd,IAAI,MAAkB,CAAC;IACvB,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACpB,QAAQ,GAAG,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAC1C,IAAI,CAAC;QACH,MAAM,GAAG,UAAU,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACrD,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1B,QAAQ,GAAG,QAAQ,CAAC;IACtB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9B,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,KAAK,QAAQ,CAAC,YAAY,EAAE,IAAI,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC,CACxH,CAAC;IACF,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAA4C,CAAC;AACjG,CAAC;AAED,4EAA4E;AAC5E,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE,QAAQ,EAAE,CAAC;AAEpC,gFAAgF;AAChF,oFAAoF;AACpF,8EAA8E;AAE9E,8EAA8E;AAC9E,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,GAAG,QAAQ;IACX,IAAI,GAAG;QACL,OAAO,QAAQ,CAAC,GAAG,EAAE,CAAC;IACxB,CAAC;CACF,CAAC;AAEF,iFAAiF;AACjF,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,GAAG,SAAS;IACZ,IAAI,GAAG;QACL,OAAO,SAAS,CAAC,GAAG,EAAE,CAAC;IACzB,CAAC;CACF,CAAC;AAEF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,GAAG,OAAO;IACV,IAAI,GAAG;QACL,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;IACvB,CAAC;CACF,CAAC;AAEF,0FAA0F;AAC1F,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,GAAG,YAAY;IACf,IAAI,GAAG;QACL,OAAO,YAAY,CAAC,GAAG,EAAE,CAAC;IAC5B,CAAC;CACF,CAAC;AAEF,0FAA0F;AAC1F,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,GAAG,YAAY;IACf,IAAI,GAAG;QACL,OAAO,YAAY,CAAC,GAAG,EAAE,CAAC;IAC5B,CAAC;CACF,CAAC;AAEF,4CAA4C;AAC5C,MAAM,CAAC,MAAM,IAAI,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;AAEpC;;;GAGG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,KAAK,EAAE;QACL,GAAG,cAAc;QACjB,GAAG,CAAC,KAAc;YAChB,SAAS,EAAE,CAAC;YACZ,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;YACtF,CAAC;YACD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAE,CAAC;YACtC,OAAO,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAChF,CAAC;KACF;CACF,CAAC;AAEF;mDACmD;AACnD,MAAM,UAAU,QAAQ,CAAC,MAAgB;IACvC,SAAS,EAAE,CAAC;IACZ,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC3C,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,cAAc,CAAC,SAAiB,EAAE,KAAa,EAAE,OAAgB;IAC/E,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;IACtB,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;IAC1C,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IACzD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC;AAC9E,CAAC;AAED,gFAAgF;AAEhF,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAsBzD,mGAAmG;AACnG,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,GAAG,QAAQ;IACX,gBAAgB,EAAE,CAAC,CAAC,MAAuB,EAAE,OAAgB,EAAE,EAAE;QAC/D,MAAM,IAAI,GAAG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;QACxC,OAAO,MAAM,YAAY,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtH,CAAC,CAAqC;CACvC,CAAC;AACF,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/script/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Table namespace
|
|
3
|
+
* Functions for creating and filling table drawing objects.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* A table is drawn at a fixed position of the pane (`position.*`), not at a bar. Tables have no getters in
|
|
7
|
+
* PineScript; the script API returns the live tables in `result.tables`.
|
|
8
|
+
*
|
|
9
|
+
* PineScript rules:
|
|
10
|
+
* - `table.cell` defines a cell: the arguments it does not give get their default, a previous definition of the
|
|
11
|
+
* cell is replaced
|
|
12
|
+
* - `table.cell_set_*` changes one property of a cell (a cell that was not defined is created)
|
|
13
|
+
* - a column or row outside the table is a runtime error
|
|
14
|
+
* - a deleted table is `na`: its functions do nothing
|
|
15
|
+
*
|
|
16
|
+
* @version 6
|
|
17
|
+
*/
|
|
18
|
+
import type { Table, color } from '../types/index.js';
|
|
19
|
+
type TablePosition = Table['position'];
|
|
20
|
+
type HAlign = 'left' | 'center' | 'right';
|
|
21
|
+
type VAlign = 'top' | 'center' | 'bottom';
|
|
22
|
+
type FontFamily = 'default' | 'monospace';
|
|
23
|
+
/**
|
|
24
|
+
* Creates a new table (PineScript `table.new`).
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* const t = table.new(position.top_right, 2, 3, '#131722', '#787B86', 1);
|
|
29
|
+
* table.cell(t, 0, 0, 'RSI', 0, 0, '#FFFFFF');
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare function new_table(position: TablePosition, columns: number, rows: number, bgcolor?: color, frame_color?: color, frame_width?: number, border_color?: color, border_width?: number, force_overlay?: boolean): Table;
|
|
33
|
+
/**
|
|
34
|
+
* Defines a cell (PineScript `table.cell`): its text and properties. Omitted properties get their default.
|
|
35
|
+
*/
|
|
36
|
+
export declare function cell(table_id: Table, column: number, row: number, text?: string, width?: number, height?: number, text_color?: color, text_halign?: HAlign, text_valign?: VAlign, text_size?: string | number, bgcolor?: color, tooltip?: string, text_font_family?: FontFamily, text_formatting?: number): void;
|
|
37
|
+
/** Sets the text of a cell. */
|
|
38
|
+
export declare const cell_set_text: (table_id: Table, column: number, row: number, value: string | undefined) => void;
|
|
39
|
+
/** Sets the width of a cell (% of the chart width; 0 fits the text). */
|
|
40
|
+
export declare const cell_set_width: (table_id: Table, column: number, row: number, value: number | undefined) => void;
|
|
41
|
+
/** Sets the height of a cell (% of the chart height; 0 fits the text). */
|
|
42
|
+
export declare const cell_set_height: (table_id: Table, column: number, row: number, value: number | undefined) => void;
|
|
43
|
+
/** Sets the text colour of a cell. */
|
|
44
|
+
export declare const cell_set_text_color: (table_id: Table, column: number, row: number, value: color | undefined) => void;
|
|
45
|
+
/** Sets the horizontal text alignment of a cell. */
|
|
46
|
+
export declare const cell_set_text_halign: (table_id: Table, column: number, row: number, value: "left" | "right" | "center" | undefined) => void;
|
|
47
|
+
/** Sets the vertical text alignment of a cell. */
|
|
48
|
+
export declare const cell_set_text_valign: (table_id: Table, column: number, row: number, value: "center" | "top" | "bottom" | undefined) => void;
|
|
49
|
+
/** Sets the text size of a cell. */
|
|
50
|
+
export declare const cell_set_text_size: (table_id: Table, column: number, row: number, value: string | number | undefined) => void;
|
|
51
|
+
/** Sets the background colour of a cell. */
|
|
52
|
+
export declare const cell_set_bgcolor: (table_id: Table, column: number, row: number, value: color | undefined) => void;
|
|
53
|
+
/** Sets the tooltip of a cell. */
|
|
54
|
+
export declare const cell_set_tooltip: (table_id: Table, column: number, row: number, value: string | undefined) => void;
|
|
55
|
+
/** Sets the font family of a cell. */
|
|
56
|
+
export declare const cell_set_text_font_family: (table_id: Table, column: number, row: number, value: "default" | "monospace" | undefined) => void;
|
|
57
|
+
/** Sets the text formatting of a cell (`text.format_*` flags). */
|
|
58
|
+
export declare const cell_set_text_formatting: (table_id: Table, column: number, row: number, value: number | undefined) => void;
|
|
59
|
+
/**
|
|
60
|
+
* Merges the cells from start_column / start_row to end_column / end_row (PineScript `table.merge_cells`). The
|
|
61
|
+
* merged cell shows the content of the start cell.
|
|
62
|
+
*/
|
|
63
|
+
export declare function merge_cells(table_id: Table, start_column: number, start_row: number, end_column: number, end_row: number): void;
|
|
64
|
+
/**
|
|
65
|
+
* Removes the cells from start_column / start_row to end_column / end_row (PineScript `table.clear`; default end:
|
|
66
|
+
* the start cell), and the merges that start in that range.
|
|
67
|
+
*/
|
|
68
|
+
export declare function clear(table_id: Table, start_column: number, start_row: number, end_column?: number, end_row?: number): void;
|
|
69
|
+
/** Moves the table to another position (`position.*`). */
|
|
70
|
+
export declare const set_position: (table_id: Table, value: "top_left" | "top_center" | "top_right" | "middle_left" | "middle_center" | "middle_right" | "bottom_left" | "bottom_center" | "bottom_right") => void;
|
|
71
|
+
/** Sets the background colour of the table. */
|
|
72
|
+
export declare const set_bgcolor: (table_id: Table, value: color | undefined) => void;
|
|
73
|
+
/** Sets the colour of the outer frame. */
|
|
74
|
+
export declare const set_frame_color: (table_id: Table, value: color | undefined) => void;
|
|
75
|
+
/** Sets the width of the outer frame. */
|
|
76
|
+
export declare const set_frame_width: (table_id: Table, value: number | undefined) => void;
|
|
77
|
+
/** Sets the colour of the cell borders. */
|
|
78
|
+
export declare const set_border_color: (table_id: Table, value: color | undefined) => void;
|
|
79
|
+
/** Sets the width of the cell borders. */
|
|
80
|
+
export declare const set_border_width: (table_id: Table, value: number | undefined) => void;
|
|
81
|
+
/** Deletes the table (PineScript `table.delete`). */
|
|
82
|
+
export declare function delete_table(table_id: Table): void;
|
|
83
|
+
/** All live tables, in creation order (PineScript `table.all`). A new array. */
|
|
84
|
+
export declare function all(): Table[];
|
|
85
|
+
export { new_table as new };
|
|
86
|
+
export { delete_table as delete };
|
|
87
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/table/index.ts"],"names":[],"mappings":"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"}
|