@origintrail-official/dkg-storage 10.0.15 → 10.0.16
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 +50 -0
- package/dist/adapters/oxigraph.d.ts +6 -6
- package/dist/adapters/oxigraph.js +6 -6
- package/dist/adapters/sparql-http.d.ts +3 -1
- package/dist/adapters/sparql-http.d.ts.map +1 -1
- package/dist/adapters/sparql-http.js +20 -0
- package/dist/adapters/sparql-http.js.map +1 -1
- package/dist/graph-set-catalog-state.d.ts +13 -3
- package/dist/graph-set-catalog-state.d.ts.map +1 -1
- package/dist/graph-set-catalog-state.js +39 -14
- package/dist/graph-set-catalog-state.js.map +1 -1
- package/dist/graph-set-index-store.d.ts +1 -0
- package/dist/graph-set-index-store.d.ts.map +1 -1
- package/dist/graph-set-index-store.js +13 -32
- package/dist/graph-set-index-store.js.map +1 -1
- package/dist/managed-read-recovery-coordinator.d.ts +27 -0
- package/dist/managed-read-recovery-coordinator.d.ts.map +1 -0
- package/dist/managed-read-recovery-coordinator.js +50 -0
- package/dist/managed-read-recovery-coordinator.js.map +1 -0
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -33,6 +33,56 @@ await store.insert(quads);
|
|
|
33
33
|
const result = await store.query('SELECT * WHERE { ?s ?p ?o } LIMIT 10');
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
+
## Oxigraph persistence contract
|
|
37
|
+
|
|
38
|
+
This contract applies to `OxigraphStore` when it is created with a persistence
|
|
39
|
+
path (`oxigraph-persistent`) and to `oxigraph-worker` when that worker is given
|
|
40
|
+
a persistence path. Plain `oxigraph`, and a worker without a persistence path,
|
|
41
|
+
are in-memory stores and provide no restart durability.
|
|
42
|
+
|
|
43
|
+
### Mutation and flush semantics
|
|
44
|
+
|
|
45
|
+
- Mutations update the in-memory store immediately and schedule a full N-Quads
|
|
46
|
+
snapshot after a 50 ms debounce. A successful mutation does not by itself
|
|
47
|
+
mean the snapshot has reached disk.
|
|
48
|
+
- Callers that require an operation to survive an immediate restart must await
|
|
49
|
+
`flush()`. It cancels a pending debounce, waits for an in-flight snapshot,
|
|
50
|
+
and then writes the current state.
|
|
51
|
+
- A snapshot is written to a sibling temporary file, the file is synced, and
|
|
52
|
+
then atomically renamed over the persistence file. The containing directory
|
|
53
|
+
is synced when the platform supports it. A crash before the rename retains
|
|
54
|
+
the previous complete snapshot; a temporary file may remain for cleanup.
|
|
55
|
+
- Background flush failures are logged. Explicit `flush()` and `close()` calls
|
|
56
|
+
reject on write, sync, or rename failures so their callers can report that
|
|
57
|
+
recent in-memory changes may not be durable.
|
|
58
|
+
|
|
59
|
+
### Hydration and corruption
|
|
60
|
+
|
|
61
|
+
- Construction synchronously loads an existing non-empty persistence file.
|
|
62
|
+
Read failures abort construction.
|
|
63
|
+
- Invalid N-Quads are never swallowed. The file is renamed to
|
|
64
|
+
`<persist-path>.corrupt-<timestamp>` for forensics, the failure is logged,
|
|
65
|
+
and construction throws. A later start can continue with an empty store
|
|
66
|
+
while the quarantined file remains available for investigation.
|
|
67
|
+
|
|
68
|
+
### Graceful shutdown
|
|
69
|
+
|
|
70
|
+
- `close()` cancels the debounce, waits for any in-flight snapshot, and runs a
|
|
71
|
+
final flush. For `oxigraph-worker`, the close request delegates to that same
|
|
72
|
+
final flush and is not subject to the read-operation timeout; the worker is
|
|
73
|
+
terminated only after the request settles.
|
|
74
|
+
- `DKGAgent.stop()` awaits `store.close()`. If the final flush fails, shutdown
|
|
75
|
+
continues but emits a loud operator-facing error stating that the on-disk
|
|
76
|
+
store may be missing recent inserts.
|
|
77
|
+
- Forced termination can still lose changes made after the last successful
|
|
78
|
+
flush. The atomic snapshot protocol protects the previously persisted file
|
|
79
|
+
from a torn overwrite; it cannot make unflushed memory durable.
|
|
80
|
+
|
|
81
|
+
The executable regression contract is in
|
|
82
|
+
[`test/oxigraph-persistence.test.ts`](test/oxigraph-persistence.test.ts). The
|
|
83
|
+
[archived WM persistence incident report](../../docs/archive/internal/bugs/wm-persistence-regression.md)
|
|
84
|
+
retains the original diagnosis, reproduction evidence, and fix history.
|
|
85
|
+
|
|
36
86
|
## Embedded worker store (`oxigraph-worker`) tuning
|
|
37
87
|
|
|
38
88
|
The embedded worker runs **all** store operations on a single worker thread, so
|
|
@@ -28,8 +28,8 @@ export declare class OxigraphStore implements TripleStore {
|
|
|
28
28
|
* immediately rather than discovering empty data later through queries.
|
|
29
29
|
*
|
|
30
30
|
* Previously this swallowed all errors and started empty silently — that
|
|
31
|
-
* was the proximate cause of the WM persistence regression
|
|
32
|
-
*
|
|
31
|
+
* was the proximate cause of the WM persistence regression. See the current
|
|
32
|
+
* contract in packages/storage/README.md#oxigraph-persistence-contract.
|
|
33
33
|
*/
|
|
34
34
|
private hydrateSync;
|
|
35
35
|
private flushTimer;
|
|
@@ -48,8 +48,8 @@ export declare class OxigraphStore implements TripleStore {
|
|
|
48
48
|
* Previously a single `writeFile(persistPath, dump)` left the store
|
|
49
49
|
* vulnerable to torn writes on SIGKILL (the file would be partially
|
|
50
50
|
* rewritten, then hydrateSync would fail-then-swallow on next start).
|
|
51
|
-
* This is the proximate fix for the catastrophic data-loss mode
|
|
52
|
-
*
|
|
51
|
+
* This is the proximate fix for the catastrophic data-loss mode. See the
|
|
52
|
+
* current contract in packages/storage/README.md#oxigraph-persistence-contract.
|
|
53
53
|
*
|
|
54
54
|
* Error model: this method THROWS on any write/fsync/rename failure
|
|
55
55
|
* (ENOSPC, EACCES, EROFS, EXDEV, …). The background debounced flush
|
|
@@ -108,8 +108,8 @@ export declare class OxigraphStore implements TripleStore {
|
|
|
108
108
|
* its own — otherwise `flushNow()` short-circuits on `this.flushing`
|
|
109
109
|
* and silently drops any inserts that landed between the in-flight
|
|
110
110
|
* dump and the close call. (That's the "lost the last few assertions"
|
|
111
|
-
* mode
|
|
112
|
-
*
|
|
111
|
+
* mode closed by the contract in
|
|
112
|
+
* packages/storage/README.md#oxigraph-persistence-contract.)
|
|
113
113
|
*
|
|
114
114
|
* THROWS if the final flush fails — see `flush()` for the same error
|
|
115
115
|
* contract. The agent's `stop()` path catches this and logs but does
|
|
@@ -54,8 +54,8 @@ export class OxigraphStore {
|
|
|
54
54
|
* immediately rather than discovering empty data later through queries.
|
|
55
55
|
*
|
|
56
56
|
* Previously this swallowed all errors and started empty silently — that
|
|
57
|
-
* was the proximate cause of the WM persistence regression
|
|
58
|
-
*
|
|
57
|
+
* was the proximate cause of the WM persistence regression. See the current
|
|
58
|
+
* contract in packages/storage/README.md#oxigraph-persistence-contract.
|
|
59
59
|
*/
|
|
60
60
|
hydrateSync(filePath) {
|
|
61
61
|
if (!existsSync(filePath))
|
|
@@ -122,8 +122,8 @@ export class OxigraphStore {
|
|
|
122
122
|
* Previously a single `writeFile(persistPath, dump)` left the store
|
|
123
123
|
* vulnerable to torn writes on SIGKILL (the file would be partially
|
|
124
124
|
* rewritten, then hydrateSync would fail-then-swallow on next start).
|
|
125
|
-
* This is the proximate fix for the catastrophic data-loss mode
|
|
126
|
-
*
|
|
125
|
+
* This is the proximate fix for the catastrophic data-loss mode. See the
|
|
126
|
+
* current contract in packages/storage/README.md#oxigraph-persistence-contract.
|
|
127
127
|
*
|
|
128
128
|
* Error model: this method THROWS on any write/fsync/rename failure
|
|
129
129
|
* (ENOSPC, EACCES, EROFS, EXDEV, …). The background debounced flush
|
|
@@ -479,8 +479,8 @@ export class OxigraphStore {
|
|
|
479
479
|
* its own — otherwise `flushNow()` short-circuits on `this.flushing`
|
|
480
480
|
* and silently drops any inserts that landed between the in-flight
|
|
481
481
|
* dump and the close call. (That's the "lost the last few assertions"
|
|
482
|
-
* mode
|
|
483
|
-
*
|
|
482
|
+
* mode closed by the contract in
|
|
483
|
+
* packages/storage/README.md#oxigraph-persistence-contract.)
|
|
484
484
|
*
|
|
485
485
|
* THROWS if the final flush fails — see `flush()` for the same error
|
|
486
486
|
* contract. The agent's `stop()` path catches this and logs but does
|
|
@@ -116,7 +116,8 @@ export interface SparqlHttpStoreOptions {
|
|
|
116
116
|
* closed instead of failing boot; it never grants managed guarantees.
|
|
117
117
|
*/
|
|
118
118
|
managedOxigraph?: boolean;
|
|
119
|
-
/** Runtime-only recovery hook
|
|
119
|
+
/** Runtime-only recovery hook for a client deadline, including a cancelled
|
|
120
|
+
* managed read reaching its retained deadline with server work unconfirmed. */
|
|
120
121
|
onClientTimeout?: (operation: string) => void;
|
|
121
122
|
/** Runtime-only managed-server state used to classify restart collateral. */
|
|
122
123
|
getRecoveryState?: () => SparqlHttpRecoveryState;
|
|
@@ -176,6 +177,7 @@ export declare class SparqlHttpStore implements TripleStore {
|
|
|
176
177
|
private readonly slowQuerySampleRate;
|
|
177
178
|
private readonly onSlowQuery?;
|
|
178
179
|
private readonly workLifecycle;
|
|
180
|
+
private readonly managedReadRecovery;
|
|
179
181
|
private listGraphsCache;
|
|
180
182
|
private listGraphsCachedAt;
|
|
181
183
|
private listGraphsGeneration;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sparql-http.d.ts","sourceRoot":"","sources":["../../src/adapters/sparql-http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,IAAI,IAAI,OAAO,EACf,YAAY,EACZ,aAAa,EACb,WAAW,EAEX,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,gCAAgC,CAAC;AAaxC,OAAO,EAGL,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EAClC,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAKL,KAAK,4BAA4B,EAClC,MAAM,gCAAgC,CAAC;AAexC,OAAO,KAAK,EACV,uCAAuC,EACxC,MAAM,iDAAiD,CAAC;AAYzD,OAAO,EAGL,KAAK,iCAAiC,EACvC,MAAM,4CAA4C,CAAC;
|
|
1
|
+
{"version":3,"file":"sparql-http.d.ts","sourceRoot":"","sources":["../../src/adapters/sparql-http.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,6 +39,7 @@ import { readSparqlResponseText } from './sparql-response-policy.js';
|
|
|
39
39
|
import { createManagedOxigraphRuntimeStoreConfigV1, getManagedOxigraphRuntimeConstructionAuthorityV1, isManagedOxigraphRuntimeConstructionAuthorityV1, snapshotManagedOxigraphRuntimeOptionsV1, } from '../managed-oxigraph-runtime-store.js';
|
|
40
40
|
import { createRfc64HttpSharedProjectionRunnerV1, RFC64_MANAGED_OXIGRAPH_PROJECTION_RESPONSE_STRATEGY_V1, } from '../rfc64-http-shared-projection-runner.js';
|
|
41
41
|
import { executeRfc64ExactBindingsReadCapabilityV1, executeRfc64SemanticReadCapabilityV1, } from '../rfc64-exact-bindings-read-capability.js';
|
|
42
|
+
import { ManagedReadRecoveryCoordinatorV1 } from '../managed-read-recovery-coordinator.js';
|
|
42
43
|
function throwIfAborted(signal) {
|
|
43
44
|
if (!signal?.aborted)
|
|
44
45
|
return;
|
|
@@ -123,6 +124,7 @@ export class SparqlHttpStore {
|
|
|
123
124
|
slowQuerySampleRate;
|
|
124
125
|
onSlowQuery;
|
|
125
126
|
workLifecycle = new AbortableStoreWorkLifecycle();
|
|
127
|
+
managedReadRecovery;
|
|
126
128
|
listGraphsCache = null;
|
|
127
129
|
listGraphsCachedAt = 0;
|
|
128
130
|
listGraphsGeneration = 0;
|
|
@@ -153,6 +155,12 @@ export class SparqlHttpStore {
|
|
|
153
155
|
this.slowQueryThresholdMs = normalizeNonNegativeNumber(options.slowQueryThresholdMs, DEFAULT_SLOW_QUERY_THRESHOLD_MS);
|
|
154
156
|
this.slowQuerySampleRate = normalizeSampleRate(options.slowQuerySampleRate, DEFAULT_SLOW_QUERY_SAMPLE_RATE);
|
|
155
157
|
this.onSlowQuery = options.onSlowQuery;
|
|
158
|
+
this.managedReadRecovery = new ManagedReadRecoveryCoordinatorV1({
|
|
159
|
+
enabled: this.managedOxigraph,
|
|
160
|
+
now: this.now,
|
|
161
|
+
readRecoveryState: () => this.readRecoveryState(),
|
|
162
|
+
recover: (operation) => this.notifyClientTimeout(operation),
|
|
163
|
+
});
|
|
156
164
|
// Content-Type is set per-request by the query/mutation transports (direct POST:
|
|
157
165
|
// application/sparql-query | application/sparql-update). Only shared
|
|
158
166
|
// headers (e.g. Authorization) belong here.
|
|
@@ -268,9 +276,14 @@ export class SparqlHttpStore {
|
|
|
268
276
|
// mojibake-ing any non-ASCII character in the query. UTF-8 is what the
|
|
269
277
|
// SPARQL protocol prescribes.
|
|
270
278
|
const timeoutSignal = AbortSignal.timeout(this.timeout);
|
|
279
|
+
const deadline = this.now() + this.timeout;
|
|
280
|
+
const recoveryToken = this.managedReadRecovery.begin(recoveryAtStart);
|
|
271
281
|
const signalScope = composeAbortSignals(options?.signal, timeoutSignal);
|
|
272
282
|
const signal = signalScope.signal ?? timeoutSignal;
|
|
283
|
+
let dispatched = false;
|
|
273
284
|
try {
|
|
285
|
+
throwIfAborted(signal);
|
|
286
|
+
dispatched = true;
|
|
274
287
|
const response = await fetch(this.queryEndpoint, {
|
|
275
288
|
method: 'POST',
|
|
276
289
|
headers: { ...this.headers, 'Content-Type': SPARQL_QUERY_CONTENT_TYPE, Accept: accept },
|
|
@@ -299,6 +312,12 @@ export class SparqlHttpStore {
|
|
|
299
312
|
cause: error,
|
|
300
313
|
});
|
|
301
314
|
}
|
|
315
|
+
if (dispatched && signal.aborted) {
|
|
316
|
+
// Closing the HTTP connection does not cancel Oxigraph 0.5
|
|
317
|
+
// evaluation. Hand the dispatched read to the lifecycle-owned
|
|
318
|
+
// retained-deadline coordinator instead of extending the caller wait.
|
|
319
|
+
this.managedReadRecovery.retain(operation, deadline, recoveryToken);
|
|
320
|
+
}
|
|
302
321
|
if (this.recoveryInterrupted(recoveryAtStart)) {
|
|
303
322
|
throw this.recoveryError(storeOperation, 'indeterminate', error);
|
|
304
323
|
}
|
|
@@ -875,6 +894,7 @@ export class SparqlHttpStore {
|
|
|
875
894
|
`queryHash=${event.queryHash} queryBytes=${event.queryBytes} endpoint=${event.endpoint}`);
|
|
876
895
|
}
|
|
877
896
|
async close() {
|
|
897
|
+
this.managedReadRecovery.close();
|
|
878
898
|
// A managed endpoint is stopped immediately after store.close(). The
|
|
879
899
|
// lifecycle owns one complete generation, aborting and draining every
|
|
880
900
|
// operation admitted before close while rejecting work attempted during
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sparql-http.js","sourceRoot":"","sources":["../../src/adapters/sparql-http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAWH,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAClG,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EACL,8BAA8B,GAE/B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,oBAAoB,GAGrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,uCAAuC,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,EACL,uCAAuC,EACvC,6BAA6B,EAC7B,+BAA+B,EAC/B,gCAAgC,GACjC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,iCAAiC,EACjC,6BAA6B,GAG9B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,qCAAqC,EAAE,MAAM,oCAAoC,CAAC;AAC3F,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,UAAU,EACV,wBAAwB,GAEzB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAKrE,OAAO,EACL,yCAAyC,EACzC,gDAAgD,EAChD,+CAA+C,EAC/C,uCAAuC,GACxC,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,uCAAuC,EACvC,sDAAsD,GAEvD,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACL,yCAAyC,EACzC,oCAAoC,GAErC,MAAM,4CAA4C,CAAC;AACpD,SAAS,cAAc,CAAC,MAA+B;IACrD,IAAI,CAAC,MAAM,EAAE,OAAO;QAAE,OAAO;IAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,MAAM,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,+BAA+B,GAAG,MAAM,CAAC;AAC/C,MAAM,8BAA8B,GAAG,CAAC,CAAC;AACzC,MAAM,4BAA4B,GAAG,MAAM,CAAC;AAC5C;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD,0DAA0D;IACjD,IAAI,GAAG,+BAA+B,CAAC;IACvC,MAAM,CAAS;IACf,SAAS,CAAS;IAClB,eAAe,CAAS;IAEjC,YAAY,SAAiB,EAAE,MAAc,EAAE,eAAuB;QACpE,KAAK,CAAC,eAAe,SAAS,YAAY,MAAM,MAAM,eAAe,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;CACF;AAED,+EAA+E;AAC/E,MAAM,CAAC,MAAM,+BAA+B,GAAG,sBAAsB,CAAC;AAmBtE;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,GAAY;IACpD,IAAI,GAAG,YAAY,uBAAuB;QAAE,OAAO,IAAI,CAAC;IACxD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,GAAkE,CAAC;IAC7E,OAAO,CACL,CAAC,CAAC,IAAI,KAAK,+BAA+B;QAC1C,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;QAC5B,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;QACzB,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAC/B,OAAO,CAAC,CAAC,eAAe,KAAK,QAAQ;QACrC,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAC9B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,MAAM,CAAC;AACrD,MAAM,YAAY,GAAG,GAAW,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;AAwFrD,MAAM,OAAO,eAAe;IACjB,qBAAqB,GAAG,eAAwB,CAAC;IACjD,iBAAiB,GAAG,eAAwB,CAAC;IACtD;;;OAGG;IACM,6BAA6B,CACqC;IAClE,sCAAsC,CAAe;IACrD,iCAAiC,CAAe;IAChD,4BAA4B,CAAe;IAEnC,aAAa,CAAS;IACtB,cAAc,CAAS;IACvB,OAAO,CAAS;IAChB,OAAO,CAAyB;IAChC,YAAY,CAAU;IACtB,eAAe,CAAU;IACzB,eAAe,CAA+B;IAC9C,gBAAgB,CAAiC;IACjD,kBAAkB,CAA+B;IACjD,SAAS,CAAyB;IAElC,GAAG,CAAe;IAClB,oBAAoB,CAAS;IAC7B,mBAAmB,CAAS;IAC5B,WAAW,CAA6C;IACxD,aAAa,GAAG,IAAI,2BAA2B,EAAE,CAAC;IAC3D,eAAe,GAAoB,IAAI,CAAC;IACxC,kBAAkB,GAAG,CAAC,CAAC;IACvB,oBAAoB,GAAG,CAAC,CAAC;IACzB,kBAAkB,GAA6B,IAAI,CAAC;IAC5D,2EAA2E;IAC3E,2EAA2E;IAC3E,4EAA4E;IAC3D,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAEvD,YACE,OAA+B,EAC/B,qBAA8B;QAE9B,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,EAAE,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,cAAc,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,8BAA8B,CAAC;QACjE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC;QAClD,IAAI,CAAC,eAAe,GAAG,+CAA+C,CACpE,qBAAqB,CACtB,CAAC;QACF,IAAI,CAAC,sCAAsC,GAAG,IAAI,CAAC,eAAe,CAAC;QACnE,IAAI,CAAC,iCAAiC,GAAG,IAAI,CAAC,eAAe,CAAC;QAC9D,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,eAAe,CAAC;QACzD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,eAAe;YAC5C,CAAC,CAAC,iBAAiB;YACnB,CAAC,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,8BAA8B,CAAC;QACrE,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,YAAY,CAAC;QACvC,IAAI,CAAC,oBAAoB,GAAG,0BAA0B,CACpD,OAAO,CAAC,oBAAoB,EAC5B,+BAA+B,CAChC,CAAC;QACF,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAC5C,OAAO,CAAC,mBAAmB,EAC3B,8BAA8B,CAC/B,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,iFAAiF;QACjF,qEAAqE;QACrE,4CAA4C;QAC5C,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;QAC/C,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,6BAA6B,GAAG,uCAAuC,CAAC;gBAC3E,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC;gBAChF,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,uBAAuB,CAC7D,yBAAyB,EACzB,MAAM,EACN,OAAO,CACR;aACF,EAAE,sDAAsD,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAEO,qBAAqB,CAC3B,OAAqC,EACrC,OAGe;QAEf,OAAO,IAAI,CAAC,YAAY,CACtB,WAAW,EACX;YACE,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,EACD,KAAK,EAAE,eAAe,EAAE,EAAE;YACxB,MAAM,gBAAgB,GAA2B;gBAC/C,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,eAAe;gBACvB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;YACF,OAAO,IAAI,CAAC,SAAS,CACnB,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,MAAM,EACd,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,eAAe,CAAC,CACjD,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAED,wBAAwB,CACtB,SAA4C,EAC5C,OAAsC;QAEtC,IAAI,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAChF,CAAC;QACD,OAAO,yCAAyC,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;IAED,mBAAmB,CACjB,SAAuC,EACvC,OAAsC;QAEtC,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QACD,OAAO,oCAAoC,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IAEO,YAAY,CAClB,SAAyB,EACzB,OAAiC,EACjC,IAAqD;QAErD,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC1C,IAAI,QAAQ,EAAE,UAAU,EAAE,CAAC;YACzB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAC3B,OAAO,EAAE,MAAM,EACf,CAAC,MAAM,EAAE,EAAE;YACT,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CACvB,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,MAAM,IAAI,eAAe,SAAS,EAAE,EAC7C,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAClB,MAAM,EACN,EAAE,cAAc,EAAE,SAAS,EAAE,CAC9B,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO,IAAI,CAAC;QACjE,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtC,IACE,OAAO,KAAK,EAAE,UAAU,KAAK,SAAS;mBACnC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC;mBACtC,KAAK,CAAC,UAAU,IAAI,CAAC;gBACxB,OAAO,KAAK,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,2EAA2E;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,aAAa,CACnB,SAAyB,EACzB,OAAwC,EACxC,KAAe;QAEf,OAAO,IAAI,0BAA0B,CAAC;YACpC,OAAO,EAAE,iBAAiB;YAC1B,SAAS;YACT,OAAO;YACP,OAAO,EAAE,OAAO,KAAK,aAAa;gBAChC,CAAC,CAAC,mCAAmC,SAAS,kBAAkB;gBAChE,CAAC,CAAC,yCAAyC,SAAS,4BAA4B;YAClF,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAEO,mBAAmB,CACzB,OAAuC;QAEvC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzC,OAAO,OAAO,KAAK,IAAI,IAAI,CACzB,OAAO,CAAC,UAAU;eACf,CAAC,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,CAAC,UAAU,CAAC,CACnE,CAAC;IACJ,CAAC;IAEO,mBAAmB,CAAC,SAAyB;QACnD,IAAI,CAAC;YACH,IAAI,CAAC,eAAe,EAAE,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;QAAC,MAAM,CAAC;YACP,uEAAuE;QACzE,CAAC;IACH,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;IACjC,CAAC;IAED,+EAA+E;IAC/E,WAAW,CAAC,WAAmB;QAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED,gBAAgB,CAAC,WAAmB;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACrD,CAAC;IAEO,KAAK,CAAC,SAAS,CACrB,MAAc,EACd,MAAc,EACd,SAAgC,EAChC,cAA8B,EAC9B,OAA2C,EAC3C,OAA2C;QAE3C,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACjD,IAAI,eAAe,EAAE,UAAU,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;QAC1D,CAAC;QACD,qEAAqE;QACrE,qEAAqE;QACrE,qEAAqE;QACrE,kEAAkE;QAClE,kEAAkE;QAClE,uEAAuE;QACvE,gDAAgD;QAChD,0EAA0E;QAC1E,0EAA0E;QAC1E,uEAAuE;QACvE,8BAA8B;QAC9B,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,IAAI,aAAa,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE;gBAC/C,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,EAAE,MAAM,EAAE;gBACvF,IAAI,EAAE,MAAM;gBACZ,MAAM;aACP,CAAC,CAAC;YACH,0EAA0E;YAC1E,sEAAsE;YACtE,uEAAuE;YACvE,OAAO,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,UAAU,EAAE,CAAC,+BAA+B,CAAC,GAAG,CAAC,CAAC,EAAE;oBAClD,SAAS;oBACT,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,eAAe,SAAS,EAAE;iBACtD,CAAC,CAAC;YACL,CAAC;YACD,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC1B,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;gBACpC,MAAM,IAAI,0BAA0B,CAAC;oBACnC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa;oBACjE,SAAS;oBACT,cAAc;oBACd,SAAS,EAAE,IAAI,CAAC,OAAO;oBACvB,KAAK,EAAE,KAAK;iBACb,CAAC,CAAC;YACL,CAAC;YACD,IAAI,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC9C,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,WAAW,CAAC,OAAO,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAED,4EAA4E;IACpE,KAAK,CAAC,iBAAiB,CAC7B,MAAc,EACd,OAAsB,EACtB,YAA4B,QAAQ;QAEpC,sEAAsE;QACtE,sEAAsE;QACtE,mEAAmE;QACnE,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE;YACrE,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACjD,IAAI,eAAe,EAAE,UAAU,EAAE,CAAC;gBAChC,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YACrD,CAAC;YACD,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxD,MAAM,WAAW,GAAG,mBAAmB,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;YACxE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,IAAI,aAAa,CAAC;YACnD,sEAAsE;YACtE,iEAAiE;YACjE,4DAA4D;YAC5D,IAAI,CAAC;gBACH,cAAc,CAAC,MAAM,CAAC,CAAC;gBACvB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE;oBAC3C,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE;oBACxE,IAAI,EAAE,MAAM;oBACZ,MAAM;iBACP,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;oBACZ,oEAAoE;oBACpE,mEAAmE;oBACnE,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC9C,MAAM,IAAI,uBAAuB,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,UAAU,EAAE,CAAC,+BAA+B,CAAC,GAAG,CAAC,CAAC,EAAE;wBAClD,SAAS;wBACT,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,eAAe,SAAS,EAAE;qBACtD,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC1B,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;oBACpC,MAAM,IAAI,0BAA0B,CAAC;wBACnC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa;wBACjE,SAAS;wBACT,SAAS,EAAE,IAAI,CAAC,OAAO;wBACvB,KAAK,EAAE,KAAK;qBACb,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC9C,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;gBAC9D,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;oBAAS,CAAC;gBACT,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB,EAAE,OAAsB;QACnD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC/B,2BAA2B,CAAC,KAAK,EAAE;YACjC,QAAQ,EAAE,wBAAwB;YAClC,KAAK,EAAE,wBAAwB;SAChC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqB,CAAC;QAC7C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;QACD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjI,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,CAAC,IAAI,CAAC,UAAU,SAAS,CAAC,KAAK,CAAC,YAAY,OAAO,OAAO,CAAC,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,oBAAoB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAC3D,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAChC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE;YACtD,MAAM;YACN,OAAO,EAAE;gBACP,GAAG,OAAO;gBACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,oBAAoB;aAChD;YACD,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB,EAAE,OAAsB;QACnD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC/B,0EAA0E;QAC1E,yEAAyE;QACzE,uEAAuE;QACvE,gEAAgE;QAChE,0EAA0E;QAC1E,wEAAwE;QACxE,kEAAkE;QAClE,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAChC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;YAChF,MAAM;YACN,OAAO,EAAE;gBACP,GAAG,OAAO;gBACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,oBAAoB;aAChD;YACD,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAyB,EAAE,OAAsB;QACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;YAC7C,GAAG,OAAO;YACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,yCAAyC;SACrE,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;YAC5C,GAAG,OAAO;YACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,wCAAwC;SACpE,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,OAAyB,EACzB,OAAsB;QAEtB,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,OAAyB,EACzB,OAAsB;QAEtB,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC;QAC/B,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QACrE,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QACzE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7D,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,IAAI,MAAc,CAAC;QACnB,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,GAAG,mBAAmB,SAAS,CAAC,QAAQ,CAAC,OAAO,MAAM,uBAAuB,SAAS,CAAC,QAAQ,CAAC,OAAO,MAAM,MAAM,CAAC;QAC5H,CAAC;aAAM,CAAC;YACN,wEAAwE;YACxE,0EAA0E;YAC1E,MAAM,GAAG,2BAA2B,MAAM,+BAA+B,MAAM,MAAM,CAAC;QACxF,CAAC;QACD,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAChC,KAAK,EAAE,QAAQ;gBACb,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE;gBACxC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE;YACnB,MAAM;YACN,OAAO,EAAE;gBACP,GAAG,OAAO;gBACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,6BAA6B;aACzD;YACD,SAAS,EAAE,iBAAiB;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,QAAgB,EAAE,MAAc,EAAE,OAAsB;QAClF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;YAC7C,GAAG,OAAO;YACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,+CAA+C;SAC3E,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,mBAAmB,SAAS,CAAC,QAAQ,CAAC,mCAAmC,SAAS,CAAC,QAAQ,CAAC,6CAA6C,aAAa,SAAS,CAAC;QAC/K,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAChC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE;YAC7C,MAAM;YACN,OAAO,EAAE;gBACP,GAAG,OAAO;gBACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,mCAAmC;aAC/D;YACD,SAAS,EAAE,uBAAuB;SACnC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;YAC5C,GAAG,OAAO;YACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,8CAA8C;SAC1E,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,OAAuB;QAClD,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAChC,uEAAuE;YACvE,gFAAgF;YAChF,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;YACtB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,GAAG,OAAO;gBACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,oBAAoB;aAChD;YACD,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,QAAgB,EAChB,KAAgB,EAChB,OAAsB;QAEtB,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,CAAC;YAC/C,kEAAkE;YAClE,yEAAyE;YACzE,wEAAwE;YACxE,yEAAyE;YACzE,MAAM,IAAI,qCAAqC,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;QACrF,CAAC;QACD,2BAA2B,CAAC,KAAK,EAAE;YACjC,QAAQ,EAAE,wBAAwB;YAClC,KAAK,EAAE,8BAA8B;SACtC,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,6BAA6B,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAChC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE;YAC7C,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,0BAA0B,EAAE;YAC9E,SAAS,EAAE,cAAc;YACzB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACnB,CAAC,CAAC;oBACA,MAAM,EAAE,IAAI,CAAC,OAAO;oBACpB,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,kCAAkC,EAAE;oBACnE,SAAS,EAAE,cAAc;iBAC1B;gBACD,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,QAAgB,EAChB,UAAqB,EACrB,YAAoB,EACpB,eAAuB,EACvB,aAAwB,EACxB,OAAsB;QAEtB,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,qCAAqC,CAC7C,wBAAwB,EACxB,iBAAiB,CAClB,CAAC;QACJ,CAAC;QACD,2BAA2B,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,aAAa,CAAC,EAAE;YAC7D,QAAQ,EAAE,wBAAwB;YAClC,KAAK,EAAE,wCAAwC;SAChD,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,uCAAuC,CAClD,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,eAAe,EACf,aAAa,CACd,CAAC;QACF,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAChC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE;YAC3D,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,oCAAoC,EAAE;YACxF,SAAS,EAAE,wBAAwB;YACnC,OAAO,EAAE;gBACP,MAAM,EAAE,IAAI,CAAC,OAAO;gBACpB,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,4CAA4C,EAAE;gBAC7E,SAAS,EAAE,wBAAwB;aACpC;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,QAAgB,EAChB,OAAe,EACf,KAAgB,EAChB,OAAsB;QAEtB,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,CAAC;YAC/C,qEAAqE;YACrE,0EAA0E;YAC1E,4EAA4E;YAC5E,MAAM,IAAI,qCAAqC,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;QACvF,CAAC;QACD,2BAA2B,CAAC,KAAK,EAAE;YACjC,QAAQ,EAAE,wBAAwB;YAClC,KAAK,EAAE,gCAAgC;SACxC,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,+BAA+B,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACzE,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAChC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE;YAC7C,MAAM;YACN,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,4BAA4B,EAAE;YAChF,SAAS,EAAE,gBAAgB;SAC5B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,KAAkC,EAClC,OAAsB;QAEtB,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,qCAAqC,CAC7C,wBAAwB,EACxB,iBAAiB,CAClB,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,iCAAiC,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,cAAc,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;QACnE,2BAA2B,CAAC,IAAI,CAAC,aAAa,EAAE;YAC9C,QAAQ,EAAE,wBAAwB;YAClC,KAAK,EAAE,wCAAwC;SAChD,CAAC,CAAC;QACH,OAAO,6BAA6B,CAAC;YACnC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC;gBAC/C,mEAAmE;gBACnE,sEAAsE;gBACtE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;gBACtD,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,oCAAoC,EAAE;gBACxF,SAAS,EAAE,wBAAwB;aACpC,CAAC;YACF,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE;gBAC7C,GAAG,OAAO;gBACV,MAAM,EAAE,4CAA4C;aACrD,CAAC;YACF,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CACnC,IAAI,CAAC,OAAO,EACZ,EAAE,GAAG,cAAc,EAAE,MAAM,EAAE,4CAA4C,EAAE,EAC3E,wBAAwB,CACzB;YACD,WAAW,EAAE,GAAG,EAAE;gBAChB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YACjF,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAEO,mBAAmB,CACzB,QAA8D;QAE9D,OAAO,IAAI,CAAC,kBAAkB,KAAK,iBAAiB;eAC/C,IAAI,CAAC,kBAAkB,KAAK,QAAQ,CAAC;IAC5C,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,sBAAsB,CAAC,IAUpC;QACC,IAAI,SAA0C,CAAC;QAC/C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE;gBAC9E,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACjD,IAAI,eAAe,EAAE,UAAU,EAAE,CAAC;oBAChC,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;gBAC1D,CAAC;gBACD,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxD,MAAM,WAAW,GAAG,mBAAmB,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;gBACxE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,IAAI,aAAa,CAAC;gBACnD,IAAI,CAAC;oBACH,qEAAqE;oBACrE,sEAAsE;oBACtE,cAAc,CAAC,MAAM,CAAC,CAAC;oBACvB,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACjD,IAAI,CAAC,yBAAyB,EAAE,CAAC;oBACjC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE;wBAC3C,MAAM,EAAE,MAAM;wBACd,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE;wBACxE,IAAI,EAAE,IAAI,CAAC,MAAM;wBACjB,MAAM;qBACP,CAAC,CAAC;oBACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;wBACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;wBAC9C,MAAM,IAAI,uBAAuB,CAC/B,IAAI,CAAC,SAAS,EACd,GAAG,CAAC,MAAM,EACV,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CACnB,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACnB,UAAU,EAAE,CAAC,+BAA+B,CAAC,GAAG,CAAC,CAAC,EAAE;4BAClD,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,eAAe,IAAI,CAAC,SAAS,EAAE;yBAChE,CAAC,CAAC;oBACL,CAAC;oBACD,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;wBAC1B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBACzC,MAAM,IAAI,0BAA0B,CAAC;4BACnC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa;4BACjE,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,SAAS,EAAE,IAAI,CAAC,OAAO;4BACvB,KAAK,EAAE,KAAK;yBACb,CAAC,CAAC;oBACL,CAAC;oBACD,IAAI,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,CAAC;wBAC9C,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;oBACnE,CAAC;oBACD,MAAM,KAAK,CAAC;gBACd,CAAC;wBAAS,CAAC;oBACT,WAAW,CAAC,OAAO,EAAE,CAAC;gBACxB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,IAAI,CAAC,iBAAiB,CAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,IAAI,CAAC,OAAO,CAAC,OAAO,EACpB,IAAI,CAAC,OAAO,CAAC,SAAS,CACvB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC;YACD,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,4BAA4B,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,aAAa,EAAE,CAAC;oBAC3E,SAAS,CAAC,MAAM,EAAE,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,aAAa,EAAE,CAAC;gBAC5B,CAAC;gBACD,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACnC,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,SAAS,EAAE,MAAM,EAAE,CAAC;QACpB,IAAI,SAAS;YAAE,IAAI,CAAC,yBAAyB,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAc,EAAE,OAAgC;QAC1D,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,MAAc,EACd,OAA2C,EAC3C,cAA+B;QAE/B,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,yEAAyE;QACzE,uEAAuE;QACvE,MAAM,SAAS,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,KAAK,MAAM,IAAI,SAAS,CAAC,IAAI,KAAK,KAAK,CAAC;QACpE,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,KAAK,MAAM;eACxC,CAAC,SAAS,CAAC,IAAI,KAAK,WAAW,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QACvE,MAAM,kBAAkB,GAAG,cAAc,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE;YAC9E,MAAM,gBAAgB,GAA2B;gBAC/C,GAAG,OAAO;gBACV,MAAM,EAAE,eAAe;aACxB,CAAC;YACF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,cAAc,CAAC,eAAe,CAAC,CAAC;YAEhC,IAAI,CAAC;gBACH,IAAI,WAAW,EAAE,CAAC;oBAChB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;gBAClF,CAAC;gBAED,OAAO,MAAM,IAAI,CAAC,SAAS,CACzB,OAAO,EACP,iCAAiC,EACjC,OAAO,EACP,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,EAAE,GAAG,EAAE,EAAE;oBACZ,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;wBACZ,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE;4BAC7C,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB;4BACnD,eAAe,EAAE,IAAI,CAAC,eAAe;4BACrC,SAAS,EAAE,kBAAkB;4BAC7B,mBAAmB,EAAE,IAAI;yBAC1B,CAAC,CAAC;wBACH,MAAM,IAAI,uBAAuB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC7E,CAAC;oBAED,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE;wBAC7C,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB;wBACnD,eAAe,EAAE,IAAI,CAAC,eAAe;wBACrC,SAAS,EAAE,kBAAkB;qBAC9B,CAAC,CAAC;oBACH,OAAO,2BAA2B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACrE,CAAC,CACF,CAAC;YACJ,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,kBAAkB,CAAC;oBACtB,MAAM,EAAE,OAAO;oBACf,MAAM,EAAE,OAAO,EAAE,MAAM;oBACvB,SAAS;iBACV,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,MAAc,EACd,OAA2C,EAC3C,cAA8B;QAE9B,OAAO,IAAI,CAAC,SAAS,CACnB,MAAM,EACN,mCAAmC,EACnC,WAAW,EACX,cAAc,EACd,OAAO,EACP,KAAK,EAAE,GAAG,EAAE,EAAE;YACZ,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE;oBAC7C,gBAAgB,EAAE,OAAO,EAAE,gBAAgB;oBAC3C,eAAe,EAAE,IAAI,CAAC,eAAe;oBACrC,SAAS,EAAE,cAAc;oBACzB,mBAAmB,EAAE,IAAI;iBAC1B,CAAC,CAAC;gBACH,MAAM,IAAI,uBAAuB,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YACjF,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE;gBAC7C,gBAAgB,EAAE,OAAO,EAAE,gBAAgB;gBAC3C,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,SAAS,EAAE,cAAc;aAC1B,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC5C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,OAAsB;QACrD,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CACrC,gBAAgB,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EACrD,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,sBAAsB,EAAE,EACjE,UAAU,CACX,CAAC;QACF,OAAO,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB;QACjC,+DAA+D;IACjE,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE,OAAsB;QACtD,MAAM,MAAM,GAAG,sBAAsB,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;QAC5D,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAChC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE;YAC7C,MAAM;YACN,OAAO,EAAE;gBACP,GAAG,OAAO;gBACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,uBAAuB;aACnD;YACD,SAAS,EAAE,WAAW;SACvB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAsB;QACrC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QACD,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAChC,IACE,IAAI,CAAC,eAAe;YACpB,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,kBAAkB,GAAG,4BAA4B,EACnE,CAAC;YACD,OAAO,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;QACnC,CAAC;QAED,MAAM,cAAc,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;QACxF,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1E,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,OAAsB;QACnD,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAChC,0EAA0E;QAC1E,8EAA8E;QAC9E,8DAA8D;QAC9D,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CACrC,uCAAuC,EACvC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,wBAAwB,EAAE,EACnE,YAAY,CACb,CAAC;QACF,OAAO,CAAC,CAAC,IAAI,KAAK,UAAU;YAC1B,CAAC,CAAC,CAAC,CAAC,QAAQ;iBACP,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBACf,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAC;YAClF,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAEO,sBAAsB,CAAC,OAAsB;QACnD,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAC7C,MAAM,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE;YACvB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBACpD,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;gBAC3B,IAAI,UAAU,KAAK,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC7C,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC;oBAC9B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvC,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;oBAAS,CAAC;gBACT,IAAI,IAAI,CAAC,oBAAoB,KAAK,UAAU;oBAAE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/E,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QACL,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,yBAAyB;QAC/B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAiB,EAAE,OAAsB;QACxD,MAAM,MAAM,GAAG,QAAQ;YACrB,CAAC,CAAC,0CAA0C,SAAS,CAAC,QAAQ,CAAC,kBAAkB;YACjF,CAAC,CAAC,gFAAgF,CAAC;QACrF,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CACrC,MAAM,EACN;YACE,GAAG,OAAO;YACV,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,wBAAwB;SACpD,EACD,YAAY,CACb,CAAC;QACF,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACxC,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACzC,OAAO,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAEO,kBAAkB,CAAC,KAI1B;QACC,IAAI,IAAI,CAAC,oBAAoB,IAAI,CAAC,IAAI,IAAI,CAAC,mBAAmB,IAAI,CAAC;YAAE,OAAO;QAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC;QAC/C,IAAI,SAAS,GAAG,IAAI,CAAC,oBAAoB;YAAE,OAAO;QAClD,IAAI,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,mBAAmB;YAAE,OAAO;QAEtF,MAAM,KAAK,GAA6B;YACtC,MAAM,EAAE,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC;YAC1C,mEAAmE;YACnE,2EAA2E;YAC3E,SAAS,EAAE,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC;YAC5C,SAAS;YACT,WAAW,EAAE,IAAI,CAAC,oBAAoB;YACtC,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,aAAa,CAAC;YAC1D,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;YAClC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC;SACpD,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,OAAO,CAAC,IAAI,CAAC,uCAAuC,MAAM,EAAE,CAAC,CAAC;YAChE,CAAC;YACD,OAAO;QACT,CAAC;QACD,OAAO,CAAC,IAAI,CACV,iCAAiC,KAAK,CAAC,MAAM,cAAc,KAAK,CAAC,SAAS,GAAG;YAC7E,aAAa,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,KAAK,CAAC,WAAW,GAAG;YAC5E,aAAa,KAAK,CAAC,SAAS,eAAe,KAAK,CAAC,UAAU,aAAa,KAAK,CAAC,QAAQ,EAAE,CACzF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK;QACT,qEAAqE;QACrE,sEAAsE;QACtE,wEAAwE;QACxE,yEAAyE;QACzE,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACtE,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,kCAAkC,CAChD,OAA+B;IAE/B,MAAM,MAAM,GAAG,yCAAyC,CAAC;QACvD,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uCAAuC,CAAC,OAAO,EAAE,IAAI,CAAC;KAChE,CAAC,CAAC;IACH,OAAO,IAAI,eAAe,CACxB,MAAM,CAAC,OAA4C,EACnD,gDAAgD,CAAC,MAAM,CAAC,CACzD,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAc;IACjD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,aAAa,CAAC;IAC9C,IAAI,KAAK,KAAK,aAAa,IAAI,KAAK,KAAK,eAAe,IAAI,KAAK,KAAK,iBAAiB,EAAE,CAAC;QACxF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,KAAK,CACb,uFAAuF,CACxF,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAChC,OAA6E;IAE7E,MAAM,OAAO,GAAG,2BAA2B,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACxE,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC;IAExD,MAAM,aAAa,GAAiC,OAAO,CAAC,aAAa;QACvE,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,aAAa,CAAC;IAClB,IAAI,OAAO,CAAC,kBAAkB,KAAK,SAAS;QAAE,OAAO,aAAa,CAAC;IAEnE,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa;QACtC,CAAC,CAAC,OAAO,KAAK,eAAe,IAAI,OAAO,KAAK,iBAAiB;QAC9D,CAAC,CAAC,OAAO,KAAK,aAAa,CAAC;IAC9B,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CACb,0FAA0F,CAC3F,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAyB,EAAE,QAAgB;IAC7E,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QACtE,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,QAAQ,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAyB,EAAE,QAAgB;IACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC1E,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA0B;IACtD,MAAM,OAAO,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC;IAC/B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,SAAS,CAAC;AACvE,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc;IACzC,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IAChD,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;QACvB,KAAK,QAAQ,CAAC,CAAC,OAAO,QAAQ,CAAC;QAC/B,KAAK,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC;QACzB,KAAK,WAAW,CAAC,CAAC,OAAO,WAAW,CAAC;QACrC,KAAK,UAAU,CAAC,CAAC,OAAO,UAAU,CAAC;IACrC,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,MAAc;IAC/B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,4BAA4B,CAAC,QAAgB;IACpD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC9B,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC;QAClB,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC;QAClB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC;QACd,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E,SAAS,UAAU,CAAC,IAAY;IAC9B,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAC3D,IAAI,CAAC;YAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACtC,OAAO,IAAI,IAAI,GAAG,CAAC;AACrB,CAAC;AAED,SAAS,SAAS,CAAC,GAAW;IAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,YAAY,CAAC,CAAS;IAC7B,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AACrC,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,4BAA4B,CAAC,KAAgB;IACpD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAAE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,CAAC,CAAS,EAAU,EAAE;QACjC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAE,CAAC,CAAC,CAAC,eAAe;YAC3D,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC;QACrB,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1E,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACpB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAChE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,GAAG,EAAE,CAAC;YAAC,GAAG,GAAG,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAAC,CAAC;QAC9C,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACd,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAgB;IACvD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAc,EAAE,CAAC;IAC5B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;YACtE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,OAAO,GAAG,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QAClG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,UAAU,CAAC,IAAI,CAAC,kBAAkB,IAAI,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,8DAA8D;QAC9D,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqB,CAAC;QAC7C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACxB,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,GAAG,EAAE,CAAC;gBAAC,GAAG,GAAG,EAAE,CAAC;gBAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAAC,CAAC;YAC5C,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACd,CAAC;QACD,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE,CAAC;YACpC,KAAK,MAAM,SAAS,IAAI,4BAA4B,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;gBACvC,MAAM,MAAM,GAAG,CAAC,CAAS,EAAU,EAAE;oBACnC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;wBAAE,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;oBAC9C,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACpB,IAAI,CAAC,CAAC,EAAE,CAAC;wBAAC,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;wBAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC;oBACjD,OAAO,CAAC,CAAC;gBACX,CAAC,CAAC;gBACF,MAAM,OAAO,GAAG,SAAS;qBACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;qBACpF,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAClB,MAAM,KAAK,GAAG,KAAK;oBACjB,CAAC,CAAC,UAAU,SAAS,CAAC,KAAK,CAAC,YAAY,OAAO,OAAO;oBACtD,CAAC,CAAC,OAAO,CAAC;gBACZ,UAAU,CAAC,IAAI,CAAC,YAAY,KAAK,cAAc,KAAK,IAAI,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,0BAA0B,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,qBAAqB,EAAE,EAAE;IAC9E,MAAM,OAAO,GAAG,IAA0C,CAAC;IAC3D,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,4FAA4F,CAAC,CAAC;IAChH,CAAC;IACD,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"sparql-http.js","sourceRoot":"","sources":["../../src/adapters/sparql-http.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import type { SortedGraphCatalog } from './graph-set-index-store.js';
|
|
2
|
-
/**
|
|
2
|
+
/**
|
|
3
|
+
* Owns two synchronized representations of one graph set: `members` is the
|
|
4
|
+
* mutable authority, while `ordered` is either null or its exact immutable,
|
|
5
|
+
* unique, Unicode-code-point-sorted projection.
|
|
6
|
+
*/
|
|
3
7
|
export declare class GraphSetCatalogState {
|
|
4
8
|
private members;
|
|
5
9
|
private ordered;
|
|
@@ -11,8 +15,14 @@ export declare class GraphSetCatalogState {
|
|
|
11
15
|
added: string[];
|
|
12
16
|
removed: string[];
|
|
13
17
|
};
|
|
14
|
-
|
|
15
|
-
|
|
18
|
+
/** Apply one mixed presence reconciliation with at most one projection rebuild. */
|
|
19
|
+
reconcile(graphPresence: Iterable<Readonly<{
|
|
20
|
+
graph: string;
|
|
21
|
+
present: boolean;
|
|
22
|
+
}>>): {
|
|
23
|
+
added: string[];
|
|
24
|
+
removed: string[];
|
|
25
|
+
};
|
|
16
26
|
/**
|
|
17
27
|
* Return the ordered view only when it still describes the membership set
|
|
18
28
|
* observed by the caller. An invalidation between an async cache read and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-set-catalog-state.d.ts","sourceRoot":"","sources":["../src/graph-set-catalog-state.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"graph-set-catalog-state.d.ts","sourceRoot":"","sources":["../src/graph-set-catalog-state.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE;;;;GAIG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,OAAO,CAAmC;IAElD,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAExC;IAED,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAIvC,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IASlE,mFAAmF;IACnF,SAAS,CACP,aAAa,EAAE,QAAQ,CAAC,QAAQ,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC,GACrE;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IA8BzC;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,kBAAkB,GAAG,IAAI;CAKnE"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import { createSortedUniqueStringCatalog } from '@origintrail-official/dkg-core';
|
|
2
|
-
/**
|
|
1
|
+
import { createSortedUniqueStringCatalog, insertSortedUniqueStringCatalog, removeSortedUniqueStringCatalog, } from '@origintrail-official/dkg-core';
|
|
2
|
+
/**
|
|
3
|
+
* Owns two synchronized representations of one graph set: `members` is the
|
|
4
|
+
* mutable authority, while `ordered` is either null or its exact immutable,
|
|
5
|
+
* unique, Unicode-code-point-sorted projection.
|
|
6
|
+
*/
|
|
3
7
|
export class GraphSetCatalogState {
|
|
4
8
|
members = null;
|
|
5
9
|
ordered = null;
|
|
@@ -25,18 +29,39 @@ export class GraphSetCatalogState {
|
|
|
25
29
|
this.ordered = null;
|
|
26
30
|
return { added, removed };
|
|
27
31
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
32
|
+
/** Apply one mixed presence reconciliation with at most one projection rebuild. */
|
|
33
|
+
reconcile(graphPresence) {
|
|
34
|
+
if (!this.members)
|
|
35
|
+
return { added: [], removed: [] };
|
|
36
|
+
const desiredPresence = new Map();
|
|
37
|
+
for (const { graph, present } of graphPresence) {
|
|
38
|
+
desiredPresence.set(graph, present);
|
|
39
|
+
}
|
|
40
|
+
const added = [];
|
|
41
|
+
const removed = [];
|
|
42
|
+
for (const [graph, present] of desiredPresence) {
|
|
43
|
+
if (present) {
|
|
44
|
+
if (this.members.has(graph))
|
|
45
|
+
continue;
|
|
46
|
+
this.members.add(graph);
|
|
47
|
+
added.push(graph);
|
|
48
|
+
}
|
|
49
|
+
else if (this.members.delete(graph)) {
|
|
50
|
+
removed.push(graph);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
if (this.ordered) {
|
|
54
|
+
const mutationCount = added.length + removed.length;
|
|
55
|
+
if (mutationCount === 1) {
|
|
56
|
+
this.ordered = added.length === 1
|
|
57
|
+
? insertSortedUniqueStringCatalog(this.ordered, added[0])
|
|
58
|
+
: removeSortedUniqueStringCatalog(this.ordered, removed[0]);
|
|
59
|
+
}
|
|
60
|
+
else if (mutationCount > 1) {
|
|
61
|
+
this.ordered = createSortedUniqueStringCatalog(this.members);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return { added, removed };
|
|
40
65
|
}
|
|
41
66
|
/**
|
|
42
67
|
* Return the ordered view only when it still describes the membership set
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-set-catalog-state.js","sourceRoot":"","sources":["../src/graph-set-catalog-state.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"graph-set-catalog-state.js","sourceRoot":"","sources":["../src/graph-set-catalog-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -111,6 +111,7 @@ export declare class GraphSetIndexStore implements TripleStoreDecorator {
|
|
|
111
111
|
private resetRevalidationSchedule;
|
|
112
112
|
private addGraphs;
|
|
113
113
|
private removeGraphs;
|
|
114
|
+
private reconcileGraphs;
|
|
114
115
|
private loadCurrentSortedGraphs;
|
|
115
116
|
private maintainTouchedGraphs;
|
|
116
117
|
private emit;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-set-index-store.d.ts","sourceRoot":"","sources":["../src/graph-set-index-store.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"graph-set-index-store.d.ts","sourceRoot":"","sources":["../src/graph-set-index-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { performance } from 'node:perf_hooks';
|
|
2
|
-
import {
|
|
2
|
+
import { codePointLowerBound, createSortedUniqueStringCatalog, isSparqlUpdateOperation, } from '@origintrail-official/dkg-core';
|
|
3
3
|
import { deleteByPatternWithoutCount } from './triple-store.js';
|
|
4
4
|
import { storeWorkPriorityRank } from './store-priority-scheduler.js';
|
|
5
5
|
import { UnsupportedTripleStoreCapabilityError, } from './unsupported-capability-error.js';
|
|
@@ -408,7 +408,7 @@ export class GraphSetIndexStore {
|
|
|
408
408
|
return graphs.filter((graph) => graph.startsWith(prefix));
|
|
409
409
|
}
|
|
410
410
|
const matches = [];
|
|
411
|
-
for (let index =
|
|
411
|
+
for (let index = codePointLowerBound(graphs, prefix); index < graphs.length; index += 1) {
|
|
412
412
|
const graph = graphs[index];
|
|
413
413
|
if (!graph.startsWith(prefix))
|
|
414
414
|
break;
|
|
@@ -547,14 +547,7 @@ export class GraphSetIndexStore {
|
|
|
547
547
|
if (generation !== this.mutationGeneration) {
|
|
548
548
|
continue;
|
|
549
549
|
}
|
|
550
|
-
|
|
551
|
-
if (present) {
|
|
552
|
-
this.addGraphs([graph], source);
|
|
553
|
-
}
|
|
554
|
-
else {
|
|
555
|
-
this.removeGraphs([graph], source);
|
|
556
|
-
}
|
|
557
|
-
}
|
|
550
|
+
this.reconcileGraphs(graphPresence, source);
|
|
558
551
|
return;
|
|
559
552
|
}
|
|
560
553
|
catch {
|
|
@@ -600,20 +593,20 @@ export class GraphSetIndexStore {
|
|
|
600
593
|
this.nextRevalidateAt = 0;
|
|
601
594
|
}
|
|
602
595
|
addGraphs(graphs, source) {
|
|
603
|
-
|
|
604
|
-
return;
|
|
605
|
-
for (const graph of graphs) {
|
|
606
|
-
if (!graph || isAtomicGraphReplaceStagingGraph(graph) || !this.catalog.add(graph))
|
|
607
|
-
continue;
|
|
608
|
-
this.emit({ type: 'graph-added', graph, source });
|
|
609
|
-
}
|
|
596
|
+
this.reconcileGraphs(graphs.map((graph) => ({ graph, present: true })), source);
|
|
610
597
|
}
|
|
611
598
|
removeGraphs(graphs, source) {
|
|
599
|
+
this.reconcileGraphs(graphs.map((graph) => ({ graph, present: false })), source);
|
|
600
|
+
}
|
|
601
|
+
reconcileGraphs(graphPresence, source) {
|
|
612
602
|
if (!this.catalog.initialized)
|
|
613
603
|
return;
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
604
|
+
const eligible = graphPresence.filter(({ graph, present }) => graph && (!present || !isAtomicGraphReplaceStagingGraph(graph)));
|
|
605
|
+
const { added, removed } = this.catalog.reconcile(eligible);
|
|
606
|
+
for (const graph of added) {
|
|
607
|
+
this.emit({ type: 'graph-added', graph, source });
|
|
608
|
+
}
|
|
609
|
+
for (const graph of removed) {
|
|
617
610
|
this.emit({ type: 'graph-removed', graph, source });
|
|
618
611
|
}
|
|
619
612
|
}
|
|
@@ -656,18 +649,6 @@ export class GraphSetIndexStore {
|
|
|
656
649
|
function namedGraphsFromQuads(quads) {
|
|
657
650
|
return [...new Set(quads.map((quad) => quad.graph).filter(Boolean))];
|
|
658
651
|
}
|
|
659
|
-
function lowerBound(values, target) {
|
|
660
|
-
let low = 0;
|
|
661
|
-
let high = values.length;
|
|
662
|
-
while (low < high) {
|
|
663
|
-
const middle = low + Math.floor((high - low) / 2);
|
|
664
|
-
if (compareCodePoint(values[middle], target) < 0)
|
|
665
|
-
low = middle + 1;
|
|
666
|
-
else
|
|
667
|
-
high = middle;
|
|
668
|
-
}
|
|
669
|
-
return low;
|
|
670
|
-
}
|
|
671
652
|
function endsWithHighSurrogate(value) {
|
|
672
653
|
if (value.length === 0)
|
|
673
654
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-set-index-store.js","sourceRoot":"","sources":["../src/graph-set-index-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"graph-set-index-store.js","sourceRoot":"","sources":["../src/graph-set-index-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export interface ManagedReadRecoveryStateV1 {
|
|
2
|
+
readonly recovering: boolean;
|
|
3
|
+
readonly generation: number;
|
|
4
|
+
}
|
|
5
|
+
export interface ManagedReadRecoveryTokenV1 {
|
|
6
|
+
readonly lifecycleGeneration: number;
|
|
7
|
+
readonly storeGeneration: number;
|
|
8
|
+
}
|
|
9
|
+
export interface ManagedReadRecoveryCoordinatorOptionsV1 {
|
|
10
|
+
readonly enabled: boolean;
|
|
11
|
+
readonly now: () => number;
|
|
12
|
+
readonly readRecoveryState: () => ManagedReadRecoveryStateV1 | null;
|
|
13
|
+
readonly recover: (operation: 'query' | 'construct') => void;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Own the retained deadline for a managed read whose HTTP request was
|
|
17
|
+
* dispatched before caller cancellation. Closing the store invalidates one
|
|
18
|
+
* complete lifecycle generation; a later reusable generation starts cleanly.
|
|
19
|
+
*/
|
|
20
|
+
export declare class ManagedReadRecoveryCoordinatorV1 {
|
|
21
|
+
#private;
|
|
22
|
+
constructor(options: ManagedReadRecoveryCoordinatorOptionsV1);
|
|
23
|
+
begin(state: ManagedReadRecoveryStateV1 | null): ManagedReadRecoveryTokenV1 | null;
|
|
24
|
+
retain(operation: 'query' | 'construct', deadline: number, token: ManagedReadRecoveryTokenV1 | null): void;
|
|
25
|
+
close(): void;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=managed-read-recovery-coordinator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-read-recovery-coordinator.d.ts","sourceRoot":"","sources":["../src/managed-read-recovery-coordinator.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,uCAAuC;IACtD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,0BAA0B,GAAG,IAAI,CAAC;IACpE,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,GAAG,WAAW,KAAK,IAAI,CAAC;CAC9D;AAED;;;;GAIG;AACH,qBAAa,gCAAgC;;gBAS/B,OAAO,EAAE,uCAAuC;IAI5D,KAAK,CAAC,KAAK,EAAE,0BAA0B,GAAG,IAAI,GAAG,0BAA0B,GAAG,IAAI;IAQlF,MAAM,CACJ,SAAS,EAAE,OAAO,GAAG,WAAW,EAChC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,0BAA0B,GAAG,IAAI,GACvC,IAAI;IAuBP,KAAK,IAAI,IAAI;CAKd"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
/**
|
|
3
|
+
* Own the retained deadline for a managed read whose HTTP request was
|
|
4
|
+
* dispatched before caller cancellation. Closing the store invalidates one
|
|
5
|
+
* complete lifecycle generation; a later reusable generation starts cleanly.
|
|
6
|
+
*/
|
|
7
|
+
export class ManagedReadRecoveryCoordinatorV1 {
|
|
8
|
+
#options;
|
|
9
|
+
#lifecycleGeneration = 0;
|
|
10
|
+
#pending;
|
|
11
|
+
constructor(options) {
|
|
12
|
+
this.#options = options;
|
|
13
|
+
}
|
|
14
|
+
begin(state) {
|
|
15
|
+
if (!this.#options.enabled || state === null || state.recovering)
|
|
16
|
+
return null;
|
|
17
|
+
return Object.freeze({
|
|
18
|
+
lifecycleGeneration: this.#lifecycleGeneration,
|
|
19
|
+
storeGeneration: state.generation,
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
retain(operation, deadline, token) {
|
|
23
|
+
if (token === null || token.lifecycleGeneration !== this.#lifecycleGeneration)
|
|
24
|
+
return;
|
|
25
|
+
const pending = this.#pending;
|
|
26
|
+
if (pending?.storeGeneration === token.storeGeneration && pending.deadline <= deadline) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
clearTimeout(pending?.timer);
|
|
30
|
+
const timer = setTimeout(() => {
|
|
31
|
+
if (this.#pending?.timer === timer)
|
|
32
|
+
this.#pending = undefined;
|
|
33
|
+
const current = this.#options.readRecoveryState();
|
|
34
|
+
if (token.lifecycleGeneration === this.#lifecycleGeneration
|
|
35
|
+
&& current !== null
|
|
36
|
+
&& !current.recovering
|
|
37
|
+
&& current.generation === token.storeGeneration) {
|
|
38
|
+
this.#options.recover(operation);
|
|
39
|
+
}
|
|
40
|
+
}, Math.max(0, deadline - this.#options.now()));
|
|
41
|
+
timer.unref?.();
|
|
42
|
+
this.#pending = { timer, deadline, storeGeneration: token.storeGeneration };
|
|
43
|
+
}
|
|
44
|
+
close() {
|
|
45
|
+
this.#lifecycleGeneration += 1;
|
|
46
|
+
clearTimeout(this.#pending?.timer);
|
|
47
|
+
this.#pending = undefined;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=managed-read-recovery-coordinator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-read-recovery-coordinator.js","sourceRoot":"","sources":["../src/managed-read-recovery-coordinator.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAmBtC;;;;GAIG;AACH,MAAM,OAAO,gCAAgC;IAClC,QAAQ,CAA0C;IAC3D,oBAAoB,GAAG,CAAC,CAAC;IACzB,QAAQ,CAIN;IAEF,YAAY,OAAgD;QAC1D,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,KAAwC;QAC5C,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAC9E,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,mBAAmB,EAAE,IAAI,CAAC,oBAAoB;YAC9C,eAAe,EAAE,KAAK,CAAC,UAAU;SAClC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CACJ,SAAgC,EAChC,QAAgB,EAChB,KAAwC;QAExC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,mBAAmB,KAAK,IAAI,CAAC,oBAAoB;YAAE,OAAO;QACtF,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,OAAO,EAAE,eAAe,KAAK,KAAK,CAAC,eAAe,IAAI,OAAO,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC;YACvF,OAAO;QACT,CAAC;QACD,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,KAAK,KAAK;gBAAE,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;YAClD,IACE,KAAK,CAAC,mBAAmB,KAAK,IAAI,CAAC,oBAAoB;mBACpD,OAAO,KAAK,IAAI;mBAChB,CAAC,OAAO,CAAC,UAAU;mBACnB,OAAO,CAAC,UAAU,KAAK,KAAK,CAAC,eAAe,EAC/C,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACnC,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAChD,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;IAC9E,CAAC;IAED,KAAK;QACH,IAAI,CAAC,oBAAoB,IAAI,CAAC,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;IAC5B,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@origintrail-official/dkg-storage",
|
|
3
|
-
"version": "10.0.
|
|
3
|
+
"version": "10.0.16",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"oxigraph": "^0.5",
|
|
23
|
-
"@origintrail-official/dkg-http-utils": "10.0.
|
|
24
|
-
"@origintrail-official/dkg-core": "10.0.
|
|
25
|
-
"@origintrail-official/dkg-rdf-utils": "10.0.
|
|
23
|
+
"@origintrail-official/dkg-http-utils": "10.0.16",
|
|
24
|
+
"@origintrail-official/dkg-core": "10.0.16",
|
|
25
|
+
"@origintrail-official/dkg-rdf-utils": "10.0.16"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"@vitest/coverage-v8": "^4.0.18",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"build": "tsc",
|
|
49
49
|
"benchmark:delete-no-count": "pnpm run build && node scripts/delete-by-pattern-no-count-benchmark.mjs",
|
|
50
50
|
"test": "vitest run",
|
|
51
|
-
"test:coverage": "vitest run --coverage",
|
|
51
|
+
"test:coverage": "vitest run --coverage && node ../../scripts/ci/check-coverage.mjs storage",
|
|
52
52
|
"clean": "rm -rf dist tsconfig.tsbuildinfo"
|
|
53
53
|
}
|
|
54
54
|
}
|