@substrat-run/control-plane-api 0.135.0 → 0.136.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/dist/aggregate-reads.d.ts.map +1 -1
- package/dist/aggregate-reads.js +4 -1
- package/dist/aggregate-reads.js.map +1 -1
- package/dist/aggregate-source.d.ts +17 -1
- package/dist/aggregate-source.d.ts.map +1 -1
- package/dist/aggregate-source.js +16 -10
- package/dist/aggregate-source.js.map +1 -1
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +1016 -65
- package/dist/api.js.map +1 -1
- package/dist/cf-observability.d.ts +6 -0
- package/dist/cf-observability.d.ts.map +1 -1
- package/dist/cf-observability.js +125 -33
- package/dist/cf-observability.js.map +1 -1
- package/dist/connect-url.d.ts +2 -2
- package/dist/connect-url.d.ts.map +1 -1
- package/dist/connect-url.js +7 -1
- package/dist/connect-url.js.map +1 -1
- package/dist/connection-relay.d.ts +4 -2
- package/dist/connection-relay.d.ts.map +1 -1
- package/dist/connection-relay.js +10 -1
- package/dist/connection-relay.js.map +1 -1
- package/dist/deploy.d.ts +3 -0
- package/dist/deploy.d.ts.map +1 -1
- package/dist/deploy.js.map +1 -1
- package/dist/failure-attribution.js +1 -1
- package/dist/failure-attribution.js.map +1 -1
- package/dist/index.d.ts +6 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/observability.d.ts +20 -1
- package/dist/observability.d.ts.map +1 -1
- package/dist/observability.js +11 -1
- package/dist/observability.js.map +1 -1
- package/dist/platform-drain.d.ts +24 -2
- package/dist/platform-drain.d.ts.map +1 -1
- package/dist/platform-drain.js +36 -3
- package/dist/platform-drain.js.map +1 -1
- package/dist/platform-entry.d.ts +62 -6
- package/dist/platform-entry.d.ts.map +1 -1
- package/dist/platform-entry.generated.d.ts +8 -1
- package/dist/platform-entry.generated.d.ts.map +1 -1
- package/dist/platform-entry.generated.js +10 -3
- package/dist/platform-entry.generated.js.map +1 -1
- package/dist/platform-entry.js +151 -9
- package/dist/platform-entry.js.map +1 -1
- package/dist/provider-error.d.ts +9 -0
- package/dist/provider-error.d.ts.map +1 -0
- package/dist/provider-error.js +9 -0
- package/dist/provider-error.js.map +1 -0
- package/dist/tenant-request-query.d.ts.map +1 -1
- package/dist/tenant-request-query.js +3 -1
- package/dist/tenant-request-query.js.map +1 -1
- package/dist/vertical-client.d.ts +177 -40
- package/dist/vertical-client.d.ts.map +1 -1
- package/dist/vertical-client.js +350 -171
- package/dist/vertical-client.js.map +1 -1
- package/package.json +7 -7
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { type CubeStore } from './aggregate-source.js';
|
|
2
2
|
import type { ObservabilityReader } from './observability.js';
|
|
3
|
+
/**
|
|
4
|
+
* An HTTP method as RFC 9110 §9.1 defines it: a `token` (§5.6.2), one or more `tchar`.
|
|
5
|
+
* Not `[A-Z]+`: the writer records `Request.method` verbatim, and `M-SEARCH` and `X1` are
|
|
6
|
+
* methods too.
|
|
7
|
+
*/
|
|
8
|
+
export declare const HTTP_METHOD_PATTERN = "^[!#$%&'*+.^_`|~0-9A-Za-z-]+$";
|
|
3
9
|
/**
|
|
4
10
|
* The Cloudflare implementation of the observability seam (`observability.ts`) —
|
|
5
11
|
* GraphQL invocation analytics + the Workers Observability telemetry query API,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cf-observability.d.ts","sourceRoot":"","sources":["../src/cf-observability.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqE,KAAK,SAAS,EAAuB,MAAM,uBAAuB,CAAC;AAG/I,OAAO,KAAK,EACV,mBAAmB,EASpB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"cf-observability.d.ts","sourceRoot":"","sources":["../src/cf-observability.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqE,KAAK,SAAS,EAAuB,MAAM,uBAAuB,CAAC;AAG/I,OAAO,KAAK,EACV,mBAAmB,EASpB,MAAM,oBAAoB,CAAC;AAG5B;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,kCAAkC,CAAC;AA0enE;;;;;;;;GAQG;AACH,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;;;;;;;;;;;;OAgBG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;;;;;;;OASG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAuED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,sBAAsB,GAAG,mBAAmB,CAywC7F"}
|
package/dist/cf-observability.js
CHANGED
|
@@ -3,7 +3,21 @@ import { ControlPlaneError } from '@substrat-run/control-plane-client';
|
|
|
3
3
|
import { cachedSource, cutOverSource } from './aggregate-source.js';
|
|
4
4
|
import { stableDeploymentRefFor } from './deploy.js';
|
|
5
5
|
import { aggregateReads } from './aggregate-reads.js';
|
|
6
|
-
import { TENANT_METRICS_LIMIT, REQUEST_FACET_KEYS } from './observability.js';
|
|
6
|
+
import { TENANT_METRICS_LIMIT, REQUEST_FACET_KEYS, INVOCATION_KINDS, invocationKindOf } from './observability.js';
|
|
7
|
+
/**
|
|
8
|
+
* An HTTP method as RFC 9110 §9.1 defines it: a `token` (§5.6.2), one or more `tchar`.
|
|
9
|
+
* Not `[A-Z]+`: the writer records `Request.method` verbatim, and `M-SEARCH` and `X1` are
|
|
10
|
+
* methods too.
|
|
11
|
+
*/
|
|
12
|
+
export const HTTP_METHOD_PATTERN = "^[!#$%&'*+.^_`|~0-9A-Za-z-]+$";
|
|
13
|
+
/**
|
|
14
|
+
* #1901: a request's line, as a filter. Every request line carries its HTTP method — the
|
|
15
|
+
* lines written before `kind` existed included — and an async line's `method` is `null`,
|
|
16
|
+
* so this is the `kind = request` the lines themselves cannot spell.
|
|
17
|
+
*/
|
|
18
|
+
const REQUEST_LINE_FILTER = { key: 'method', operation: 'regex', type: 'string', value: HTTP_METHOD_PATTERN };
|
|
19
|
+
/** #1901: the kinds of async work a scope host logs — every kind but a request. */
|
|
20
|
+
const ASYNC_KINDS = INVOCATION_KINDS.filter((k) => k !== 'request');
|
|
7
21
|
/**
|
|
8
22
|
* The filters for a tenant's stamped invocation lines (#1746), with the facet filters ANDed
|
|
9
23
|
* on. `omit` leaves one facet's own filter out, which is how a facet is counted "with every
|
|
@@ -29,6 +43,14 @@ function requestFilters(scope, omit) {
|
|
|
29
43
|
const values = scope.where?.[key] ?? [];
|
|
30
44
|
if (values.length === 0)
|
|
31
45
|
continue;
|
|
46
|
+
// #1901: `request` is a kind no line spells — a request's line has no `kind` — so it is
|
|
47
|
+
// matched by what every request line has and no async line does: a method. Narrowed
|
|
48
|
+
// HERE, before the limit, so a window full of async lines still pages its requests.
|
|
49
|
+
if (key === 'kind') {
|
|
50
|
+
const kinds = values.map((v) => v === 'request' ? REQUEST_LINE_FILTER : { key: 'kind', operation: 'eq', type: 'string', value: v });
|
|
51
|
+
filters.push(kinds.length === 1 ? kinds[0] : { kind: 'group', filterCombination: 'or', filters: kinds });
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
32
54
|
const leaves = values.map((v) => key === 'status'
|
|
33
55
|
? { key, operation: 'eq', type: 'number', value: Number(v) }
|
|
34
56
|
: { key, operation: 'eq', type: 'string', value: v });
|
|
@@ -116,6 +138,13 @@ function countOf(p) {
|
|
|
116
138
|
function sampled(p) {
|
|
117
139
|
return typeof p.sampleInterval === 'number' && p.sampleInterval > 1;
|
|
118
140
|
}
|
|
141
|
+
/** #1901: does a raw line pass the scope's `kind` selection, a missing `kind` read as `request`? */
|
|
142
|
+
function kindMatches(e, scope) {
|
|
143
|
+
const values = scope.where?.kind ?? [];
|
|
144
|
+
if (values.length === 0)
|
|
145
|
+
return true;
|
|
146
|
+
return values.includes(invocationKindOf((e['source'] ?? {})['kind']));
|
|
147
|
+
}
|
|
119
148
|
/** The stamped line of a raw event, as the Requests view lists it. */
|
|
120
149
|
function requestRecordOf(e) {
|
|
121
150
|
const source = (e['source'] ?? {});
|
|
@@ -141,6 +170,12 @@ function requestRecordOf(e) {
|
|
|
141
170
|
eventTypes: strings(source['eventTypes']),
|
|
142
171
|
entities: strings(source['entities']),
|
|
143
172
|
versionId: str(source['versionId']),
|
|
173
|
+
kind: invocationKindOf(source['kind']),
|
|
174
|
+
outcome: str(source['outcome']),
|
|
175
|
+
eventType: str(source['eventType']),
|
|
176
|
+
eventId: str(source['eventId']),
|
|
177
|
+
attempt: num(source['attempt']),
|
|
178
|
+
latenessMs: num(source['latenessMs']),
|
|
144
179
|
};
|
|
145
180
|
}
|
|
146
181
|
/**
|
|
@@ -219,6 +254,16 @@ function describeInvocation(e) {
|
|
|
219
254
|
const source = (e.raw?.['source'] ?? {});
|
|
220
255
|
if (source['substrat'] !== 'invocation')
|
|
221
256
|
return e;
|
|
257
|
+
// #1901: async work has no method, path or status — it says what ran and how it ended.
|
|
258
|
+
const kind = invocationKindOf(source['kind']);
|
|
259
|
+
if (kind !== 'request') {
|
|
260
|
+
return {
|
|
261
|
+
...e,
|
|
262
|
+
invocationId: typeof source['invocationId'] === 'string' ? source['invocationId'] : null,
|
|
263
|
+
message: describeAsync(kind, source),
|
|
264
|
+
level: e.level ?? (typeof source['level'] === 'string' ? source['level'] : null),
|
|
265
|
+
};
|
|
266
|
+
}
|
|
222
267
|
const method = typeof source['method'] === 'string' ? source['method'] : '?';
|
|
223
268
|
const path = typeof source['path'] === 'string' ? source['path'] : '?';
|
|
224
269
|
const status = typeof source['status'] === 'number' ? source['status'] : null;
|
|
@@ -239,6 +284,31 @@ function describeInvocation(e) {
|
|
|
239
284
|
level: e.level ?? (isFailedInvocation(e) ? 'error' : 'info'),
|
|
240
285
|
};
|
|
241
286
|
}
|
|
287
|
+
/**
|
|
288
|
+
* #1901: an async line's message, from its own fields — names and counts only, as the line
|
|
289
|
+
* carries nothing else:
|
|
290
|
+
*
|
|
291
|
+
* - `consumer notify ← ticket.created (attempt 2) → retrying (12 ms)`
|
|
292
|
+
* - `schedule digest/send → ok (40 ms, 1200 ms late)`
|
|
293
|
+
* - `consumer: 5 more lines withheld (consumer:dead-lettered 5)`
|
|
294
|
+
*/
|
|
295
|
+
function describeAsync(kind, source) {
|
|
296
|
+
const n = (v) => (typeof v === 'number' ? v : null);
|
|
297
|
+
const outcome = str(source['outcome']) ?? '—';
|
|
298
|
+
if (outcome === 'suppressed') {
|
|
299
|
+
const by = (source['suppressedBy'] ?? {});
|
|
300
|
+
const parts = Object.entries(by).map(([k, v]) => `${k} ${String(v)}`);
|
|
301
|
+
return `${kind}: ${n(source['suppressed']) ?? '?'} more lines withheld${parts.length ? ` (${parts.join(', ')})` : ''}`;
|
|
302
|
+
}
|
|
303
|
+
const operation = str(source['operation']) ?? '?';
|
|
304
|
+
const ms = n(source['durationMs']);
|
|
305
|
+
const late = n(source['latenessMs']);
|
|
306
|
+
const timing = [ms === null ? null : `${ms} ms`, late === null ? null : `${late} ms late`].filter(Boolean).join(', ');
|
|
307
|
+
const subject = kind === 'consumer'
|
|
308
|
+
? `${operation} ← ${str(source['eventType']) ?? '?'}${n(source['attempt']) === null ? '' : ` (attempt ${n(source['attempt'])})`}`
|
|
309
|
+
: operation;
|
|
310
|
+
return `${kind} ${subject} → ${outcome}${timing ? ` (${timing})` : ''}`;
|
|
311
|
+
}
|
|
242
312
|
/**
|
|
243
313
|
* The filters for a tenant's `ctx.log` lines (#1746/#1747). The tenant predicate first and
|
|
244
314
|
* always, as for the invocation line; everything else is one more equality on a field the
|
|
@@ -463,38 +533,17 @@ export function createCfObservabilityReader(opts) {
|
|
|
463
533
|
*/
|
|
464
534
|
const telemetry = {
|
|
465
535
|
async requests(q) {
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
{
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
536
|
+
return requestCube(q);
|
|
537
|
+
},
|
|
538
|
+
// #1901: the async lines alone, for the part of a window the router's datapoints serve.
|
|
539
|
+
async asyncRequests(q) {
|
|
540
|
+
return requestCube(q, [
|
|
541
|
+
{
|
|
542
|
+
kind: 'group',
|
|
543
|
+
filterCombination: 'or',
|
|
544
|
+
filters: ASYNC_KINDS.map((value) => ({ key: 'kind', operation: 'eq', type: 'string', value })),
|
|
545
|
+
},
|
|
475
546
|
]);
|
|
476
|
-
return {
|
|
477
|
-
estimated,
|
|
478
|
-
complete,
|
|
479
|
-
rows: rows.flatMap(({ bucket, groups, count }) => {
|
|
480
|
-
const tenantId = str(groups.get('tenantId'));
|
|
481
|
-
if (tenantId === null)
|
|
482
|
-
return [];
|
|
483
|
-
const status = groups.get('status');
|
|
484
|
-
return [{
|
|
485
|
-
bucket,
|
|
486
|
-
tenantId,
|
|
487
|
-
scopeId: str(groups.get('scopeId')),
|
|
488
|
-
level: str(groups.get('level')),
|
|
489
|
-
operation: str(groups.get('operation')),
|
|
490
|
-
problemCode: str(groups.get('problemCode')),
|
|
491
|
-
principalKind: str(groups.get('principalKind')),
|
|
492
|
-
surface: str(groups.get('surface')),
|
|
493
|
-
status: typeof status === 'number' ? status : typeof status === 'string' && status !== '' ? Number(status) : null,
|
|
494
|
-
count,
|
|
495
|
-
}];
|
|
496
|
-
}),
|
|
497
|
-
};
|
|
498
547
|
},
|
|
499
548
|
async patterns(q) {
|
|
500
549
|
const { rows, estimated, complete } = await countGrouped(q, 'log', [
|
|
@@ -517,6 +566,43 @@ export function createCfObservabilityReader(opts) {
|
|
|
517
566
|
};
|
|
518
567
|
},
|
|
519
568
|
};
|
|
569
|
+
/** The request cube over stamped lines, grouped by every facet (#1746) and `kind` (#1901). */
|
|
570
|
+
async function requestCube(q, extra = []) {
|
|
571
|
+
const { rows, estimated, complete } = await countGrouped(q, 'invocation', [
|
|
572
|
+
{ type: 'string', value: 'tenantId' },
|
|
573
|
+
{ type: 'string', value: 'scopeId' },
|
|
574
|
+
{ type: 'string', value: 'level' },
|
|
575
|
+
{ type: 'string', value: 'operation' },
|
|
576
|
+
{ type: 'string', value: 'problemCode' },
|
|
577
|
+
{ type: 'string', value: 'principalKind' },
|
|
578
|
+
{ type: 'string', value: 'surface' },
|
|
579
|
+
{ type: 'number', value: 'status' },
|
|
580
|
+
{ type: 'string', value: 'kind' },
|
|
581
|
+
], extra);
|
|
582
|
+
return {
|
|
583
|
+
estimated,
|
|
584
|
+
complete,
|
|
585
|
+
rows: rows.flatMap(({ bucket, groups, count }) => {
|
|
586
|
+
const tenantId = str(groups.get('tenantId'));
|
|
587
|
+
if (tenantId === null)
|
|
588
|
+
return [];
|
|
589
|
+
const status = groups.get('status');
|
|
590
|
+
return [{
|
|
591
|
+
bucket,
|
|
592
|
+
tenantId,
|
|
593
|
+
scopeId: str(groups.get('scopeId')),
|
|
594
|
+
level: str(groups.get('level')),
|
|
595
|
+
operation: str(groups.get('operation')),
|
|
596
|
+
problemCode: str(groups.get('problemCode')),
|
|
597
|
+
principalKind: str(groups.get('principalKind')),
|
|
598
|
+
surface: str(groups.get('surface')),
|
|
599
|
+
status: typeof status === 'number' ? status : typeof status === 'string' && status !== '' ? Number(status) : null,
|
|
600
|
+
kind: str(groups.get('kind')),
|
|
601
|
+
count,
|
|
602
|
+
}];
|
|
603
|
+
}),
|
|
604
|
+
};
|
|
605
|
+
}
|
|
520
606
|
const logs = opts.cubeStore ? cachedSource(telemetry, opts.cubeStore) : telemetry;
|
|
521
607
|
const routerSince = opts.requestsFromRouterSince ? Date.parse(opts.requestsFromRouterSince) : undefined;
|
|
522
608
|
const routerDataset = opts.routerDataset;
|
|
@@ -637,10 +723,13 @@ export function createCfObservabilityReader(opts) {
|
|
|
637
723
|
* answer with no order to trust. Only a single grain that is still full is paged, and a
|
|
638
724
|
* cube built that way is marked incomplete so the cache never keeps it as final.
|
|
639
725
|
*/
|
|
640
|
-
async function countGrouped(q, kind, groupBys
|
|
726
|
+
async function countGrouped(q, kind, groupBys,
|
|
727
|
+
/** #1901: more filters ANDed on — the async cube's `kind`. */
|
|
728
|
+
extra = []) {
|
|
641
729
|
const filters = [
|
|
642
730
|
...serviceFilter([q.service]),
|
|
643
731
|
{ key: 'substrat', operation: 'eq', type: 'string', value: kind },
|
|
732
|
+
...extra,
|
|
644
733
|
];
|
|
645
734
|
const once = async (from, to, offsetBy) => {
|
|
646
735
|
const calc = await queryCalculation(filters, { from, to }, {
|
|
@@ -839,6 +928,9 @@ export function createCfObservabilityReader(opts) {
|
|
|
839
928
|
async tenantRequests(input) {
|
|
840
929
|
const events = await queryRaw(requestFilters(input), { from: input.from, to: input.to }, input.limit);
|
|
841
930
|
return events
|
|
931
|
+
// #1901: the query narrowed on kind already; this holds the answer to the same
|
|
932
|
+
// reading (a missing `kind` is a request) whatever the backend did with the filter.
|
|
933
|
+
.filter((e) => kindMatches(e, input))
|
|
842
934
|
.sort((a, b) => rawTime(b) - rawTime(a))
|
|
843
935
|
.slice(0, input.limit)
|
|
844
936
|
.map(requestRecordOf);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cf-observability.js","sourceRoot":"","sources":["../src/cf-observability.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cf-observability.js","sourceRoot":"","sources":["../src/cf-observability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,aAAa,EAA6E,MAAM,uBAAuB,CAAC;AAC/I,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAYtD,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAElH;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,+BAA+B,CAAC;AAEnE;;;;GAIG;AACH,MAAM,mBAAmB,GAAoB,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;AAE/H,mFAAmF;AACnF,MAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;AAOpE;;;;;;;;GAQG;AACH,SAAS,cAAc,CAAC,KAAyB,EAAE,IAAsB;IACvE,MAAM,OAAO,GAAsB;QACjC,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE;QAC3E,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE;QACzE,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC;KACjC,CAAC;IACF,IAAI,KAAK,CAAC,OAAO;QAAE,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3G,IAAI,KAAK,CAAC,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9G,KAAK,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;QACrC,IAAI,GAAG,KAAK,IAAI;YAAE,SAAS;QAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAClC,wFAAwF;QACxF,oFAAoF;QACpF,oFAAoF;QACpF,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;YACnB,MAAM,KAAK,GAAsB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAChD,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CACnG,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1G,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAsB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACjD,GAAG,KAAK,QAAQ;YACd,CAAC,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE;YAC5D,CAAC,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CACvD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/G,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,oFAAoF;AACpF,MAAM,WAAW,GAAG,wBAAwB,CAAC;AAE7C;;;;;;;;;GASG;AACH,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IAC5D,OAAO;QACL,IAAI,EAAE,OAAO;QACb,iBAAiB,EAAE,KAAK;QACxB,OAAO,EAAE;YACP,EAAE,GAAG,EAAE,mBAAmB,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;YACnF,EAAE,GAAG,EAAE,mBAAmB,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,OAAO,KAAK,WAAW,gBAAgB,EAAE;SACrH;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,aAAa,CAAC,QAAuC;IAC5D,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACtC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;IACvH,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC5C,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC5G,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,MAAc,EAAE,IAAY;IACpD,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACvC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA6C,CAAC;QAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/E,IAAI,QAAQ;YAAE,MAAM,GAAG,QAAQ,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,6DAA6D;IAC/D,CAAC;IACD,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACvD,OAAO,IAAI,iBAAiB,CAAC,GAAG,EAAE,qEAAqE,CAAC,CAAC;IAC3G,CAAC;IACD,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,iBAAiB,CAAC,GAAG,EAAE,2CAA2C,CAAC,CAAC;IACnG,OAAO,IAAI,iBAAiB,CAAC,GAAG,EAAE,yCAAyC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtH,CAAC;AAgBD;;;;;;GAMG;AACH,SAAS,OAAO,CAAC,CAAmB;IAClC,OAAO,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3F,CAAC;AAED,oFAAoF;AACpF,SAAS,OAAO,CAAC,CAAmB;IAClC,OAAO,OAAO,CAAC,CAAC,cAAc,KAAK,QAAQ,IAAI,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC;AACtE,CAAC;AAED,oGAAoG;AACpG,SAAS,WAAW,CAAC,CAA0B,EAAE,KAAyB;IACxE,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC;IACvC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,OAAO,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA6B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACrG,CAAC;AAED,sEAAsE;AACtE,SAAS,eAAe,CAAC,CAA0B;IACjD,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;IAC9D,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC9G,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAC9B,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACzC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7B,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI;QAC/B,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACrC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3B,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACnC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACvC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC3C,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACrC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACzC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACrC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACnC,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACnC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;KACtC,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,0BAA0B,GAAG,EAAE,CAAC;AACtC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAEpC;;;GAGG;AACH,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,mFAAmF;AACnF,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B,gCAAgC;AAChC,MAAM,GAAG,GAAG,CAAC,CAAU,EAAiB,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAE1F;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAE9B,mEAAmE;AACnE,SAAS,kBAAkB,CAAC,CAAiB;IAC3C,MAAM,MAAM,GAAG,CAAE,CAAC,CAAC,GAA+B,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;IACjG,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,YAAY;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChC,OAAO,CACL,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI;QACxB,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,KAAK,iBAAiB,CAAC,CAC9E,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,cAAc,CACrB,CAA0B,EAC1B,KAAgE;IAEhE,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;IAC9D,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,YAAY;QAAE,OAAO,KAAK,CAAC;IACtD,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,KAAK,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IACvE,IAAI,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,KAAK,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1E,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,kBAAkB,CAAC,CAAiB;IAC3C,MAAM,MAAM,GAAG,CAAE,CAAC,CAAC,GAA+B,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;IACjG,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,YAAY;QAAE,OAAO,CAAC,CAAC;IAClD,uFAAuF;IACvF,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO;YACL,GAAG,CAAC;YACJ,YAAY,EAAE,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI;YACxF,OAAO,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC;YACpC,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;SACjF,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7E,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACvE,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9E,MAAM,EAAE,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClF,MAAM,OAAO,GACX,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI;QACtB,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,MAAM,KAAK,iBAAiB;YAC5B,CAAC,CAAC,6EAA6E;gBAC7E,sEAAsE;gBACtE,GAAG,MAAM,oBAAoB;YAC/B,CAAC,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;IACxB,OAAO;QACL,GAAG,CAAC;QACJ,YAAY,EAAE,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI;QACxF,OAAO,EAAE,GAAG,MAAM,IAAI,IAAI,MAAM,OAAO,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE;QAC5E,iFAAiF;QACjF,wEAAwE;QACxE,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;KAC7D,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,aAAa,CAAC,IAAY,EAAE,MAA+B;IAClE,MAAM,CAAC,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,CAAC;IAC9C,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,CAA4B,CAAC;QACrE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtE,OAAO,GAAG,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,GAAG,uBAAuB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACzH,CAAC;IACD,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,GAAG,CAAC;IAClD,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtH,MAAM,OAAO,GACX,IAAI,KAAK,UAAU;QACjB,CAAC,CAAC,GAAG,SAAS,MAAM,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE;QACjI,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO,GAAG,IAAI,IAAI,OAAO,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC1E,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,KAO1B;IACC,MAAM,OAAO,GAAG;QACd,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE;QAC3E,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE;KACnE,CAAC;IACF,IAAI,KAAK,CAAC,OAAO;QAAE,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3G,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACpG,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5H,IAAI,KAAK,CAAC,KAAK;QAAE,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACnH,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/G,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,CAAiB;IAC3C,MAAM,MAAM,GAAG,CAAE,CAAC,CAAC,GAA+B,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;IACjG,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,KAAK;QAAE,OAAO,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/D,OAAO;QACL,GAAG,CAAC;QACJ,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO;QAC5C,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK;QACtC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACzC,oFAAoF;QACpF,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO;KAC/C,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,eAAe,CAAC,CAA0B;IACjD,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAA4B,CAAC;IACnE,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;IAC9D,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,iBAAiB,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC;AACpF,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,kBAAkB,CAAC,MAAsC;IAIhE,MAAM,SAAS,GAAG,CAAC,CAA0B,EAAiB,EAAE;QAC9D,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAA4B,CAAC;QACnE,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAA4B,CAAC;QACjE,MAAM,EAAE,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;QACzD,OAAO,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB,MAAM;SACH,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA6B,CAAC,UAAU,CAAC,KAAK,YAAY,CAAC;SAC5F,GAAG,CAAC,SAAS,CAAC;SACd,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,CAC7C,CAAC;IACF,MAAM,IAAI,GAAmC,EAAE,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmC,CAAC;IAC7D,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC1B,SAAS;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACf,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AAC7B,CAAC;AAED,0FAA0F;AAC1F,SAAS,kBAAkB,CAAC,CAAiB,EAAE,SAA+C;IAC5F,MAAM,MAAM,GAAG,CAAE,CAAC,CAAC,GAA+B,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;IACjG,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,YAAY,IAAI,CAAC,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,OAAO;QAAE,OAAO,CAAC,CAAC;IACvB,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAA4B,CAAC;IACvE,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/D,OAAO;QACL,GAAG,CAAC;QACJ,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS;QACnD,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU;QACtD,OAAO,EAAE,OAAO,OAAO,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;KACjF,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,CAA0B;IAC9C,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAA4B,CAAC;IACnE,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAA4B,CAAC;IACjE,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAC9B,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7B,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACjC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC/D,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,sFAAsF;QACtF,+EAA+E;QAC/E,OAAO,EACL,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACxB,GAAG,CAAE,OAAO,CAAC,OAAO,CAAyC,EAAE,CAAC,WAAW,CAAC,CAAC;QAC/E,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACrC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACtC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAClE,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACpC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACtC,GAAG,EAAE,CAAC;KACP,CAAC;AACJ,CAAC;AAiED,MAAM,WAAW,GAAG,8CAA8C,CAAC;AAEnE;;;;;;GAMG;AACH,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;CAerB,CAAC;AAEF;;;;;;GAMG;AACH;;;;;;;GAOG;AACH,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAE9B;;;;GAIG;AACH,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAEtC,SAAS,WAAW,CAAC,SAAoD;IACvE,OAAO;;;;;mBAKU,gBAAgB;;sBAEb,SAAS;;;0DAG2B,SAAS;;;;;CAKlE,CAAC;AACF,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,IAA4B;IACtE,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,IAAa,EAAE,EAAE,CAC5C,KAAK,CAAC,GAAG,EAAE;QACT,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,IAAI,CAAC,QAAQ,EAAE;YACxC,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAC;IAEL;;;;OAIG;IACH,MAAM,SAAS,GAAoB;QACjC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACd,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QACD,wFAAwF;QACxF,KAAK,CAAC,aAAa,CAAC,CAAC;YACnB,OAAO,WAAW,CAAC,CAAC,EAAE;gBACpB;oBACE,IAAI,EAAE,OAAO;oBACb,iBAAiB,EAAE,IAAI;oBACvB,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;iBAC/F;aACF,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,CAAC;YACd,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE;gBACjE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE;gBACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE;gBACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE;gBACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;gBAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE;aACvC,CAAC,CAAC;YACH,OAAO;gBACL,SAAS;gBACT,QAAQ;gBACR,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;oBAC/C,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;oBAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;oBAC7C,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,EAAE;wBAAE,OAAO,EAAE,CAAC;oBACzE,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBAChK,CAAC,CAAC;aACH,CAAC;QACJ,CAAC;KACF,CAAC;IACF,8FAA8F;IAC9F,KAAK,UAAU,WAAW,CAAC,CAAY,EAAE,KAAK,GAAsB,EAAE;QACpE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,YAAY,CACtD,CAAC,EACD,YAAY,EACZ;YACE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE;YACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;YAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE;YACtC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE;YACxC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE;YAC1C,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;YACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE;SAClC,EACD,KAAK,CACN,CAAC;QACF,OAAO;YACL,SAAS;YACT,QAAQ;YACR,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAoB,EAAE;gBACjE,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC7C,IAAI,QAAQ,KAAK,IAAI;oBAAE,OAAO,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACpC,OAAO,CAAC;wBACN,MAAM;wBACN,QAAQ;wBACR,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBACnC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;wBAC/B,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;wBACvC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;wBAC3C,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;wBAC/C,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBACnC,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;wBACjH,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;wBAC7B,KAAK;qBACN,CAAC,CAAC;YACL,CAAC,CAAC;SACH,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAoB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACnG,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxG,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;IACzC,MAAM,MAAM,GACV,aAAa,IAAI,WAAW,KAAK,SAAS;QACxC,CAAC,CAAC,aAAa,CACX,IAAI,EACJ;YACE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;gBACd,8EAA8E;gBAC9E,qDAAqD;gBACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;oBAClC,MAAM,IAAI,KAAK,CACb,6DAA6D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAC5G,CAAC;gBACJ,CAAC;gBACD,OAAO,iBAAiB,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YAC7C,CAAC;SACF,EACD,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAC/C;QACH,CAAC,CAAC,IAAI,CAAC;IAEX;;;;;;;;;;;;;;;OAeG;IACH,KAAK,UAAU,iBAAiB,CAAC,OAAe,EAAE,CAAY;QAC5D,IAAI,CAAC,CAAC,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;QACzH,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACjE,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAoB,EAAE;YAClD,IAAI,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO;gBAAE,OAAO,EAAE,CAAC;YACjF,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACnD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,OAAO,EAAE,CAAC;YACzC,IAAI,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC;gBAAE,SAAS,GAAG,IAAI,CAAC;YAClD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClC,OAAO;gBACL;oBACE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO;oBACnD,QAAQ,EAAE,CAAC,CAAC,QAAS;oBACrB,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBAC5B,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;oBACxB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;oBAChC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;oBACpC,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;oBACxC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBAC5B,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;oBAClC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;iBACxC;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAmD,CAAC;IAC5E,SAAS,mBAAmB,CAAC,OAAe,EAAE,QAAgB,EAAE,CAAY;QAC1E,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC;QAC/D,MAAM,GAAG,GAAG,GAAG,OAAO,SAAS,QAAQ,SAAS,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;QAC3F,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;QAC5B,MAAM,GAAG,GAAG;;;;;;;;;;iDAUiC,YAAY;;;aAGhD,SAAS,CAAC,OAAO,CAAC;uBACR,SAAS,CAAC,QAAQ,CAAC;sCACJ,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;qCAC1B,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC;;;cAG7C,sBAAsB;kBAClB,CAAC;QACf,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;YACxB,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;YAC7C,IAAI,MAAM,CAAC,MAAM,IAAI,sBAAsB,EAAE,CAAC;gBAC5C,sFAAsF;gBACtF,iDAAiD;gBACjD,MAAM,IAAI,KAAK,CACb,yDAAyD,sBAAsB,oCAAoC,CACpH,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACzC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,UAAU,YAAY,CACzB,CAAY,EACZ,IAA0B,EAC1B,QAAgD;IAChD,8DAA8D;IAC9D,KAAK,GAAsB,EAAE;QAE7B,MAAM,OAAO,GAAsB;YACjC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC7B,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;YACjE,GAAG,KAAK;SACT,CAAC;QACF,MAAM,IAAI,GAAG,KAAK,EAAE,IAAY,EAAE,EAAU,EAAE,QAAiB,EAAE,EAAE;YACjE,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;gBACzD,QAAQ;gBACR,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;gBAC7D,SAAS,EAAE,YAAY;gBACvB,KAAK,EAAE,UAAU;gBACjB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClC,CAAC,CAAC;YACH,MAAM,IAAI,GAA2E,EAAE,CAAC;YACxF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;YACrC,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;gBACtC,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAAE,SAAS;gBACnC,kFAAkF;gBAClF,wDAAwD;gBACxD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;gBACtD,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;oBACjC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;oBACzB,IAAI,KAAK,KAAK,CAAC;wBAAE,SAAS;oBAC1B,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;oBACzB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC5E,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;oBACtD,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC;QAClE,CAAC,CAAC;QACF,MAAM,IAAI,GAAG,KAAK,EAChB,IAAY,EACZ,EAAU,EACV,KAAa,EACqH,EAAE;YACpI,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,IAAI;gBAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YACzF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;YACnD,IAAI,MAAM,GAAG,CAAC,IAAI,KAAK,GAAG,eAAe,EAAE,CAAC;gBAC1C,MAAM,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;gBACtD,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzF,OAAO,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrH,CAAC;YACD,oFAAoF;YACpF,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;YAChC,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,cAAc,EAAE,IAAI,EAAE,EAAE,CAAC;gBACjD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,GAAG,UAAU,CAAC,CAAC;gBACrD,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxB,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,IAAI;oBAAE,MAAM;YACxB,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC9C,CAAC,CAAC;QACF,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO;QACL,qBAAqB,EAAE,IAAI;QAC3B,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE;YAC5B,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,GAAG,SAAS,CAAC,CAAC;YACxD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE;gBACpC,KAAK,EAAE,aAAa;gBACpB,SAAS,EAAE;oBACT,UAAU,EAAE,IAAI,CAAC,SAAS;oBAC1B,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;oBAC/B,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE;iBAC9B;aACF,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAa7B,CAAC;YACF,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;gBACnC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;gBACtF,MAAM,IAAI,KAAK,CAAC,sCAAsC,OAAO,EAAE,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,0BAA0B,IAAI,EAAE,CAAC;YAClF,OAAO,MAAM;iBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACX,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,IAAI,WAAW;gBAChD,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,qBAAqB,IAAI,IAAI;gBACtD,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,QAAQ,IAAI,CAAC;gBAC9B,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC;gBAC1B,WAAW,EAAE,CAAC,CAAC,GAAG,EAAE,WAAW,IAAI,CAAC;gBACpC,UAAU,EAAE,CAAC,CAAC,SAAS,EAAE,UAAU,IAAI,CAAC;gBACxC,UAAU,EAAE,CAAC,CAAC,SAAS,EAAE,UAAU,IAAI,CAAC;aACzC,CAAC,CAAC;iBACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC7C,CAAC;QAED,KAAK,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE;YAC5C,0EAA0E;YAC1E,6DAA6D;YAC7D,MAAM,aAAa,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,aAAa,KAAK,EAAE,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,cAAc,CAAC;YACnF,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,GAAG,SAAS,CAAC,CAAC;YAExD,6EAA6E;YAC7E,+EAA+E;YAC/E,4EAA4E;YAC5E,6EAA6E;YAC7E,8EAA8E;YAC9E,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YACpE,oFAAoF;YACpF,8EAA8E;YAC9E,kFAAkF;YAClF,8EAA8E;YAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;YACnF,MAAM,MAAM,GAAG,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;YACjE,MAAM,OAAO,GAA2B,EAAE,CAAC;YAC3C,IAAI,MAAM,KAAK,IAAI;gBAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;gBACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,QAAQ;oBAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;YAEnG,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC5B,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE;oBACpC,KAAK,EAAE,WAAW,CAAC,SAAS,CAAC;oBAC7B,SAAS,EAAE;wBACT,UAAU,EAAE,IAAI,CAAC,SAAS;wBAC1B,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;wBAC/B,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE;wBAC7B,OAAO;qBACR;iBACF,CAAC,CAAC;gBACH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAY7B,CAAC;gBACF,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;oBACnC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;oBACtF,MAAM,IAAI,KAAK,CAAC,6CAA6C,OAAO,EAAE,CAAC,CAAC;gBAC1E,CAAC;gBACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,0BAA0B,IAAI,EAAE,CAAC;gBAChF,6EAA6E;gBAC7E,2EAA2E;gBAC3E,oEAAoE;gBACpE,IAAI,IAAI,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;oBACpC,MAAM,IAAI,KAAK,CACb,kDAAkD,gBAAgB,2DAA2D,CAC9H,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CACH,CAAC;YAEF,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC5B,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC1B,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC,CAAC;gBACxC,yEAAyE;gBACzE,yCAAyC;gBACzC,IAAI,KAAK,KAAK,SAAS;oBAAE,OAAO,EAAE,CAAC;gBACnC,OAAO;oBACL;wBACE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,IAAI,WAAW;wBAChD,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,qBAAqB,IAAI,IAAI;wBACtD,uEAAuE;wBACvE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG;wBAChD,aAAa;wBACb,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,QAAQ,IAAI,CAAC;wBAC9B,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC;qBAC3B;iBACF,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE;YACxD,8EAA8E;YAC9E,6EAA6E;YAC7E,4EAA4E;YAC5E,wDAAwD;YACxD,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClG,OAAO,KAAK;qBACT,IAAI,EAAE;qBACN,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;qBACvD,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACrB,CAAC;YACD,OAAO,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACjE,CAAC;QAED,oFAAoF;QACpF,mFAAmF;QACnF,8EAA8E;QAC9E,6CAA6C;QAC7C,GAAG,CAAC,IAAI,CAAC,aAAa;YACpB,CAAC,CAAC;gBACE,aAAa,EAAE,CAAC,KAAuE,EAAE,EAAE,CACzF,kBAAkB,CAAC,IAAI,CAAC,aAAc,EAAE,KAAK,CAAC;gBAChD,mBAAmB,EAAE,CAAC,KAA6E,EAAE,EAAE,CACrG,wBAAwB,CAAC,IAAI,CAAC,aAAc,EAAE,KAAK,CAAC;aACvD;YACH,CAAC,CAAC,EAAE,CAAC;QAEP,mFAAmF;QACnF,GAAG,CAAC,IAAI,CAAC,qBAAqB;YAC5B,CAAC,CAAC;gBACE,oBAAoB,EAAE,CACpB,KAA8E,EAC9E,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,qBAAsB,EAAE,KAAK,CAAC;aACnE;YACH,CAAC,CAAC,EAAE,CAAC;QAEP,KAAK,CAAC,UAAU,CAAC,KAAK;YACpB,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAED,qFAAqF;QACrF,sEAAsE;QACtE,GAAG,cAAc,CAAC,MAAM,CAAC;QAEzB,iFAAiF;QACjF,oFAAoF;QACpF,oFAAoF;QACpF,oBAAoB;QACpB,KAAK,CAAC,cAAc,CAAC,KAAK;YACxB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACtG,OAAO,MAAM;gBACX,+EAA+E;gBAC/E,oFAAoF;iBACnF,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;iBACpC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;iBACvC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC;iBACrB,GAAG,CAAC,eAAe,CAAC,CAAC;QAC1B,CAAC;QAED,KAAK,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE;YAC7C,gFAAgF;YAChF,iFAAiF;YACjF,sBAAsB;YACtB,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YAElF,gFAAgF;YAChF,6EAA6E;YAC7E,iFAAiF;YACjF,+CAA+C;YAC/C,MAAM,KAAK,GAAG,IAAI,GAAG,EAA6B,CAAC;YACnD,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,IAAI,CAAC,SAAS;oBAAE,SAAS,GAAG,IAAI,CAAC;gBACrC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBAC9B,IAAI,CAAC,IAAI,CAAC,IAAI;wBAAE,SAAS;oBACzB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,SAAS,IAAI,CAAC,IAAI,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;oBACpE,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAChC,IAAI,QAAQ,EAAE,CAAC;wBACb,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;wBACpB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,CAAC;4BAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;wBACzF,QAAQ,CAAC,SAAS,KAAK,IAAI,CAAC,GAAG,CAAC;oBAClC,CAAC;yBAAM,CAAC;wBACN,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE;4BACb,OAAO,EAAE,IAAI,CAAC,OAAO;4BACrB,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,MAAM,EAAE,IAAI,CAAC,MAAM;4BACnB,KAAK,EAAE,CAAC;4BACR,QAAQ,EAAE,IAAI,CAAC,SAAS;4BACxB,SAAS,EAAE,IAAI,CAAC,GAAG;yBACpB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO;gBACL,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC3F,SAAS;gBACT,iFAAiF;gBACjF,6EAA6E;gBAC7E,uDAAuD;gBACvD,YAAY,EAAE,IAAI;gBAClB,KAAK;aACN,CAAC;QACJ,CAAC;KACF,CAAC;IAEF;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,KAAK,UAAU,kBAAkB,CAC/B,OAAe,EACf,KAQC;QAED,iFAAiF;QACjF,oFAAoF;QACpF,oFAAoF;QACpF,iFAAiF;QACjF,qFAAqF;QACrF,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,KAAK,OAAO,CAAC;QACxC,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG;YACZ,YAAY,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;YACvC,2BAA2B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG;YACxE,0BAA0B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG;SACxE,CAAC;QACF,IAAI,KAAK,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrE,IAAI,KAAK,CAAC,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAEvE,sFAAsF;QACtF,qFAAqF;QACrF,gFAAgF;QAChF,gFAAgF;QAChF,mEAAmE;QACnE,mFAAmF;QACnF,MAAM,GAAG,GAAG;;;UAGN,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,mBAAmB;UAChD,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,kBAAkB;;;;;;;;aAQ3C,SAAS,CAAC,OAAO,CAAC;cACjB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;iBAChB,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,4BAA4B;;cAErD,oBAAoB;kBAChB,CAAC;QAEf,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtB,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YACnC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC5B,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC1B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC9B,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC1B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC9B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC9B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC9B,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;YACpC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;SACrC,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,UAAU,wBAAwB,CACrC,OAAe,EACf,KAA8F;QAE9F,oFAAoF;QACpF,oFAAoF;QACpF,uCAAuC;QACvC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,aAAa,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,MAAM,GAAG,GAAG;;;iDAGiC,aAAa;;;;;;;;aAQjD,SAAS,CAAC,OAAO,CAAC;uBACR,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC;sCACV,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;qCAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;wBACvD,MAAM;;;cAGhB,gBAAgB;kBACZ,CAAC;QAEf,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,IAAI,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CACb,yDAAyD,gBAAgB,2DAA2D,CACrI,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACxB,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpC,+EAA+E;YAC/E,mCAAmC;YACnC,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,EAAE,CAAC;YAC9B,OAAO;gBACL;oBACE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;oBACnC,KAAK;oBACL,aAAa;oBACb,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;oBAC9B,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAC1B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;oBAC9B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;oBAC9B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;oBAC9B,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;oBACpC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;iBACrC;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsCG;IACH,KAAK,UAAU,yBAAyB,CACtC,OAAe,EACf,KAA8F;QAE9F,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;QACjH,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,MAAM,KAAK,GAAG,MAAM;YAClB,CAAC,CAAC;gBACE,2BAA2B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG;gBACxE,0BAA0B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG;aACxE;YACH,CAAC,CAAC,CAAC,iCAAiC,KAAK,QAAQ,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,YAAY,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACtF,IAAI,KAAK,CAAC,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,uCAAuC,CAAC;QAC5D,MAAM,GAAG,GAAG;;;iDAGiC,aAAa;;;;;;yCAMrB,WAAW;0CACV,WAAW;aACxC,SAAS,CAAC,OAAO,CAAC;cACjB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;;;cAGnB,gBAAgB;kBACZ,CAAC;QAEf,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,IAAI,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CACb,yDAAyD,gBAAgB,2DAA2D,CACrI,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACxB,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpC,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAChC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YACtC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;YACpC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;YACpC,OAAO;gBACL;oBACE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;oBACrC,KAAK;oBACL,aAAa;oBACb,KAAK;oBACL,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC;oBAC/B,EAAE;oBACF,QAAQ;oBACR,QAAQ;oBACR,QAAQ;oBACR,8EAA8E;oBAC9E,8EAA8E;oBAC9E,wCAAwC;oBACxC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,EAAE,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;oBAChE,gFAAgF;oBAChF,gEAAgE;oBAChE,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC9D,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBAC/D;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gFAAgF;IAChF,KAAK,UAAU,kBAAkB,CAAC,GAAW;QAC3C,MAAM,GAAG,GAAG,MAAM,KAAK,CACrB,iDAAiD,IAAI,CAAC,SAAS,uBAAuB,EACtF,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CACrF,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,kDAAkD,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACxG,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA8C,CAAC;QAC3E,OAAO,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,UAAU,eAAe,CAAC,KAe9B;QACC,oFAAoF;QACpF,qFAAqF;QACrF,qFAAqF;QACrF,sFAAsF;QACtF,8EAA8E;QAC9E,6DAA6D;QAC7D,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAC9D,MAAM,SAAS,GAAG;YAChB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,GAAG,SAAS;YAC1E,EAAE;SACH,CAAC;QACF,MAAM,IAAI,GAAsB;YAC9B,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE;YAC3E,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE;YACzE,2EAA2E;YAC3E,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC;SACjC,CAAC;QACF,IAAI,KAAK,CAAC,OAAO;YAAE,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACxG,IAAI,KAAK,CAAC,QAAQ;YAAE,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3G,kFAAkF;QAClF,gFAAgF;QAChF,qFAAqF;QACrF,mFAAmF;QACnF,6EAA6E;QAC7E,uFAAuF;QACvF,iEAAiE;QACjE,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;QACjG,CAAC;QAED,gFAAgF;QAChF,uBAAuB;QACvB,EAAE;QACF,gFAAgF;QAChF,oFAAoF;QACpF,sFAAsF;QACtF,sFAAsF;QACtF,qFAAqF;QACrF,0DAA0D;QAC1D,EAAE;QACF,oFAAoF;QACpF,8EAA8E;QAC9E,EAAE;QACF,qFAAqF;QACrF,qFAAqF;QACrF,sFAAsF;QACtF,sFAAsF;QACtF,oEAAoE;QACpE,4EAA4E;QAC5E,oFAAoF;QACpF,6EAA6E;QAC7E,qFAAqF;QACrF,iFAAiF;QACjF,gDAAgD;QAChD,EAAE;QACF,kFAAkF;QAClF,6EAA6E;QAC7E,mFAAmF;QACnF,gFAAgF;QAChF,qFAAqF;QACrF,2EAA2E;QAC3E,EAAE;QACF,mFAAmF;QACnF,oFAAoF;QACpF,kFAAkF;QAClF,sFAAsF;QACtF,qFAAqF;QACrF,gDAAgD;QAChD,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,OAAO,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC;QAC/F,iFAAiF;QACjF,sDAAsD;QACtD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QACrD,kFAAkF;QAClF,mFAAmF;QACnF,mFAAmF;QACnF,qFAAqF;QACrF,mFAAmF;QACnF,0CAA0C;QAC1C,MAAM,WAAW,GACf,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO;YAC9B,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACrB,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACxG,sEAAsE;QACtE,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,OAAO,CAAC,MAAM,WAAW,CAAC;iBACvB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC/C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;iBACvD,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QACD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,WAAW;YACvC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC;oBACV,QAAQ,CACN,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EACzE,SAAS,EACT,aAAa,CACd;oBACD,QAAQ,CACN,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,iBAAiB,GAAG,CAAC,EAAE,CAAC,EAC5F,SAAS,EACT,aAAa,CACd;oBACD,QAAQ,CACN,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAC1E,SAAS,EACT,aAAa,CACd;oBACD,8EAA8E;oBAC9E,2EAA2E;oBAC3E,kDAAkD;iBACnD,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxE,QAAQ;gBACN,6EAA6E;gBAC7E,0EAA0E;gBAC1E,CAAC,EAAE,GAAG,EAAE,iBAAiB,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAC/G,SAAS,EACT,aAAa,CACd;aACF,CAAC;YACJ,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;QAEzD,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAEjF,kFAAkF;QAClF,0EAA0E;QAC1E,sFAAsF;QACtF,qFAAqF;QACrF,8DAA8D;QAC9D,MAAM,UAAU,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC;QACpF,EAAE;QACF,qFAAqF;QACrF,sFAAsF;QACtF,gFAAgF;QAChF,oFAAoF;QACpF,0CAA0C;QAC1C,MAAM,kBAAkB,GACtB,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC;QAC3F,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAC1B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAC3B,CAAC,EAAE,GAAG,EAAE,qBAAqB,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAC9G,SAAS,EACT,kBAAkB,CACnB,CAAC;YACF,4EAA4E;YAC5E,iFAAiF;YACjF,kFAAkF;YAClF,4EAA4E;YAC5E,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBAAE,OAAO,EAAE,CAAC;YACpF,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CACH,CAAC;QAEF,iFAAiF;QACjF,sFAAsF;QACtF,mFAAmF;QACnF,2CAA2C;QAC3C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAmC,CAAC;QACxD,qFAAqF;QACrF,uDAAuD;QACvD,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC;YACxE,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;YAC9D,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,SAAS;gBAAE,SAAS;YAC7C,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAA4B,CAAC;YACnE,MAAM,EAAE,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACnF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,sFAAsF;QACtF,gFAAgF;QAChF,MAAM,SAAS,GAAG,kBAAkB,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,OAAO,SAAS,CAAC,IAAI;aAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;aACpE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,sFAAsF;YACtF,mFAAmF;YACnF,mFAAmF;YACnF,gFAAgF;YAChF,qFAAqF;YACrF,2DAA2D;aAC1D,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAChE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aACnE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;aACvD,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,2EAA2E;IAC3E,SAAS,aAAa,CAAC,MAAsC;QAC3D,OAAO;YACL,GAAG,IAAI,GAAG,CACR,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,EAAE,CAAC,CAC7F;SACF,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,SAAS,OAAO,CAAC,CAA0B;QACzC,OAAO,OAAO,CAAC,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,0EAA0E;IAC1E,SAAS,IAAI,CAAC,CAA0B;QACtC,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAA4B,CAAC;QACnE,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAA4B,CAAC;QACjE,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;QAC3D,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAChD,CAAC;IAED;;;;;;OAMG;IACH,KAAK,UAAU,gBAAgB,CAC7B,OAA0B,EAC1B,SAAuC,EACvC,KAUC;QAED,MAAM,GAAG,GAAG,MAAM,MAAM,CACtB,iDAAiD,IAAI,CAAC,SAAS,wCAAwC,EACvG;YACE,OAAO,EAAE,0BAA0B;YACnC,IAAI,EAAE,cAAc;YACpB,SAAS;YACT,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;YAC9E,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrE,UAAU,EAAE;gBACV,QAAQ,EAAE,CAAC,oBAAoB,CAAC;gBAChC,OAAO;gBACP,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;gBACxD,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvG,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC5D,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACrD;SACF,CACF,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAI3B,CAAC;QACF,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC9D,sFAAsF;QACtF,oFAAoF;QACpF,OAAO,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,CAAC;IAED,mFAAmF;IACnF,KAAK,UAAU,QAAQ;IACrB,sFAAsF;IACtF,uFAAuF;IACvF,+EAA+E;IAC/E,OAA0B;IAC1B,iFAAiF;IACjF,oFAAoF;IACpF,kDAAkD;IAClD,SAAuC,EACvC,KAAa;QAEb,MAAM,GAAG,GAAG,MAAM,MAAM,CACtB,iDAAiD,IAAI,CAAC,SAAS,wCAAwC,EACvG;YACE,OAAO,EAAE,sBAAsB;YAC/B,IAAI,EAAE,QAAQ;YACd,SAAS;YACT,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,oBAAoB,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;YAChE,KAAK;SACN,CACF,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAI3B,CAAC;QACF,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC,CAAmC,CAAC;IAClG,CAAC;IAED,uFAAuF;IACvF,KAAK,UAAU,WAAW,CACxB,OAA2B,EAC3B,KAAyB,EACzB,MAA0B,EAC1B,KAAa,EACb,KAAa;QAEb,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,MAAM,OAAO,GAA2E,EAAE,CAAC;QAC3F,4EAA4E;QAC5E,6CAA6C;QAC7C,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9F,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,iBAAiB,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACnG,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,MAAM,CACtB,iDAAiD,IAAI,CAAC,SAAS,wCAAwC,EACvG;YACE,OAAO,EAAE,sBAAsB;YAC/B,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,KAAK,GAAG,SAAS,EAAE,EAAE,EAAE;YAC/C,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,oBAAoB,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;YAChE,KAAK;SACN,CACF,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAI7B,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YACtF,MAAM,IAAI,KAAK,CAAC,sCAAsC,OAAO,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,8EAA8E;QAC9E,6EAA6E;QAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;QAClC,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC,CAEnE,CAAC;QACF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,KAAK,UAAU,UAAU,CAAC,OAAe,EAAE,KAAa,EAAE,KAAa;QACrE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,MAAM,MAAM,CACtB,iDAAiD,IAAI,CAAC,SAAS,wCAAwC,EACvG;YACE,OAAO,EAAE,0BAA0B;YACnC,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,KAAK,GAAG,SAAS,EAAE,EAAE,EAAE;YAC/C,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,EAAE,GAAG,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;oBAC7E,EAAE,GAAG,EAAE,oBAAoB,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;iBAC/E;gBACD,KAAK;aACN;YACD,KAAK;SACN,CACF,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAI7B,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YACtF,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;QAClC,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC,CAEnE,CAAC;QACF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7B,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;YAC9D,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAA4B,CAAC;YACnE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,CAA4B,CAAC;YACnE,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;YACnE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAA4B,CAAC;YAC7D,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,GAAG,CAAC,MAAM,CAAY,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9E,gFAAgF;YAChF,2EAA2E;YAC3E,0CAA0C;YAC1C,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,MAAM,CAAC,SAAS,CAAY,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7F,MAAM,IAAI,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC;YAC9D,OAAO;gBACL,OAAO,EAAE,CAAC,OAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,OAAO;gBAC1F,IAAI;gBACJ,4EAA4E;gBAC5E,gFAAgF;gBAChF,4CAA4C;gBAC5C,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,CAAC,CAAE,gBAA0B;oBAC7B,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC;wBACjB,CAAC,CAAE,QAAkB;wBACrB,CAAC,CAAE,SAAmB;gBAC1B,GAAG,EAAE,IAAI;gBACT,SAAS,EAAE,OAAO,CAAC,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,WAAW,CAAY,CAAC,CAAC,CAAC,IAAI;aAClF,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,+EAA+E;QAC/E,oFAAoF;QACpF,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;IACtD,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,OAAe;IAChC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1C,qFAAqF;QACrF,kEAAkE;QAClE,MAAM,IAAI,KAAK,CACb,2FAA2F,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CACrH,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAS,SAAS,CAAC,CAAS;IAC1B,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC;AAClB,CAAC;AAED,kGAAkG;AAClG,SAAS,KAAK,CAAC,CAAU;IACvB,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACtD,CAAC;AAED,oFAAoF;AACpF,SAAS,KAAK,CAAC,CAAU;IACvB,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED;;;GAGG;AACH,SAAS,SAAS,CAAC,CAAU;IAC3B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IACnD,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACtD,OAAO,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC;AAC5D,CAAC;AAED,0FAA0F;AAC1F,SAAS,MAAM,CAAC,IAAmB;IACjC,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
|
package/dist/connect-url.d.ts
CHANGED
|
@@ -22,10 +22,10 @@ import { type ConnectUrlRelayResult, type PlatformActorId } from '@substrat-run/
|
|
|
22
22
|
*/
|
|
23
23
|
export declare class ConnectUrlRelayError extends Error {
|
|
24
24
|
/** `503` when the DEPLOYMENT cannot run a round at all, the same distinction #603 drew. */
|
|
25
|
-
readonly status: 400 | 404 | 503;
|
|
25
|
+
readonly status: 400 | 403 | 404 | 503;
|
|
26
26
|
constructor(message: string,
|
|
27
27
|
/** `503` when the DEPLOYMENT cannot run a round at all, the same distinction #603 drew. */
|
|
28
|
-
status: 400 | 404 | 503);
|
|
28
|
+
status: 400 | 403 | 404 | 503);
|
|
29
29
|
}
|
|
30
30
|
/** Where a provider's platform-hosted consent round begins. */
|
|
31
31
|
export interface ConnectFlowSpec {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect-url.d.ts","sourceRoot":"","sources":["../src/connect-url.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"connect-url.d.ts","sourceRoot":"","sources":["../src/connect-url.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EAGrB,MAAM,yBAAyB,CAAC;AAGjC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAG3C,2FAA2F;IAC3F,QAAQ,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;IAHxC,YACE,OAAO,EAAE,MAAM;IACf,2FAA2F;IAClF,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAIvC;CACF;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0FAA0F;IAC1F,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC;IAC7D,gFAAgF;IAChF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAkDD,wBAAsB,eAAe,CACnC,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CA6EhC"}
|
package/dist/connect-url.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { signConnectState } from '@substrat-run/kernel';
|
|
1
|
+
import { isPrimaryScope, signConnectState } from '@substrat-run/kernel';
|
|
2
2
|
import { connectUrlRelayRequest, instant, } from '@substrat-run/contracts';
|
|
3
|
+
import { PREVIEW_CONNECTIONS_REFUSAL } from './connection-relay.js';
|
|
3
4
|
/**
|
|
4
5
|
* The connect-url relay (connections.md §3.5.3) — the OAuth half of §3.5.2's credential
|
|
5
6
|
* relay. This module is `/internal/connections/connect-url`'s logic, kept out of the
|
|
@@ -100,6 +101,11 @@ export async function relayConnectUrl(host, actor, body, options) {
|
|
|
100
101
|
if (!rec?.vertical) {
|
|
101
102
|
throw new ConnectUrlRelayError('scope has no vertical bound', 404);
|
|
102
103
|
}
|
|
104
|
+
// #2005: no URL is minted for a preview or a fork — the round would end in a write to the
|
|
105
|
+
// tenant's connection, which the store refuses for such a scope anyway (connection-relay.ts).
|
|
106
|
+
if (!isPrimaryScope(rec)) {
|
|
107
|
+
throw new ConnectUrlRelayError(PREVIEW_CONNECTIONS_REFUSAL, 403);
|
|
108
|
+
}
|
|
103
109
|
if (input.returnUrl) {
|
|
104
110
|
await assertReturnUrlBelongsToScope(host, actor, {
|
|
105
111
|
tenantId: input.tenantId,
|
package/dist/connect-url.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect-url.js","sourceRoot":"","sources":["../src/connect-url.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"connect-url.js","sourceRoot":"","sources":["../src/connect-url.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,7 @@ export declare class ConnectionRelayError extends Error {
|
|
|
31
31
|
* 500 (what an unrecognised throw collapses to) sent an operator looking for a bug
|
|
32
32
|
* in the credential or the relay, when the plane knew at boot that it had no key.
|
|
33
33
|
*/
|
|
34
|
-
readonly status: 400 | 404 | 409 | 422 | 503;
|
|
34
|
+
readonly status: 400 | 403 | 404 | 409 | 422 | 503;
|
|
35
35
|
/** The provider's own answer, when the refusal came from a pre-flight probe (#605). */
|
|
36
36
|
readonly probe?: ConnectionProbe | undefined;
|
|
37
37
|
constructor(message: string,
|
|
@@ -41,7 +41,7 @@ export declare class ConnectionRelayError extends Error {
|
|
|
41
41
|
* 500 (what an unrecognised throw collapses to) sent an operator looking for a bug
|
|
42
42
|
* in the credential or the relay, when the plane knew at boot that it had no key.
|
|
43
43
|
*/
|
|
44
|
-
status: 400 | 404 | 409 | 422 | 503,
|
|
44
|
+
status: 400 | 403 | 404 | 409 | 422 | 503,
|
|
45
45
|
/** The provider's own answer, when the refusal came from a pre-flight probe (#605). */
|
|
46
46
|
probe?: ConnectionProbe | undefined);
|
|
47
47
|
}
|
|
@@ -59,6 +59,8 @@ export declare class ConnectionRelayError extends Error {
|
|
|
59
59
|
* things are broken. Unverifiable is stored, and reported as unverified.
|
|
60
60
|
*/
|
|
61
61
|
export type ConnectionCandidateProbe = (provider: string, secret: Record<string, string>) => Promise<ConnectionProbe | undefined>;
|
|
62
|
+
/** What a preview or a fork is told when it asks to change a connection (#2005). */
|
|
63
|
+
export declare const PREVIEW_CONNECTIONS_REFUSAL = "previews and forks cannot change a tenant's connections: this scope is a preview or a fork";
|
|
62
64
|
export declare function relayConnectionUpsert(host: ScopeHost, actor: PlatformActorId, body: unknown, options?: {
|
|
63
65
|
probeCandidate?: ConnectionCandidateProbe;
|
|
64
66
|
}): Promise<ConnectionRelayResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection-relay.d.ts","sourceRoot":"","sources":["../src/connection-relay.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"connection-relay.d.ts","sourceRoot":"","sources":["../src/connection-relay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACrB,MAAM,yBAAyB,CAAC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAG3C;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;IAClD,uFAAuF;IACvF,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe;IAVlC,YACE,OAAO,EAAE,MAAM;IACf;;;;;OAKG;IACM,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;IAClD,uFAAuF;IAC9E,KAAK,CAAC,EAAE,eAAe,YAAA,EAIjC;CACF;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,wBAAwB,GAAG,CACrC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAC3B,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;AAE1C,oFAAoF;AACpF,eAAO,MAAM,2BAA2B,+FACsD,CAAC;AAE/F,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,OAAO,EACb,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,wBAAwB,CAAA;CAAO,GAC1D,OAAO,CAAC,qBAAqB,CAAC,CAoHhC"}
|