@framers/agentos-ext-account-sources 0.7.2 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -11
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/sync/AccountSourceSync.d.ts +17 -8
- package/dist/sync/AccountSourceSync.d.ts.map +1 -1
- package/dist/sync/AccountSourceSync.js +43 -14
- package/dist/sync/AccountSourceSync.js.map +1 -1
- package/dist/sync/SourceRevocations.d.ts +37 -3
- package/dist/sync/SourceRevocations.d.ts.map +1 -1
- package/dist/sync/SourceRevocations.js +86 -2
- package/dist/sync/SourceRevocations.js.map +1 -1
- package/dist/sync/SqlAccountSourceSyncStore.d.ts +105 -16
- package/dist/sync/SqlAccountSourceSyncStore.d.ts.map +1 -1
- package/dist/sync/SqlAccountSourceSyncStore.js +257 -45
- package/dist/sync/SqlAccountSourceSyncStore.js.map +1 -1
- package/dist/sync/schema.d.ts +4 -3
- package/dist/sync/schema.d.ts.map +1 -1
- package/dist/sync/schema.js +4 -3
- package/dist/sync/schema.js.map +1 -1
- package/manifest.json +1 -1
- package/package.json +1 -1
|
@@ -155,7 +155,9 @@ export class SourceRevocations {
|
|
|
155
155
|
context(id) { return JSON.stringify(['SourceRevocations', this.t.prefix, id]); }
|
|
156
156
|
/**
|
|
157
157
|
* Combine with fresh host account liveness in the sync store's active binding. False while a stop's purge is
|
|
158
|
-
* pending for the owner and, for good, once the owner was deleted
|
|
158
|
+
* pending for the owner and, for good, once the owner was deleted: `removeOwner` keeps the owner's block marker,
|
|
159
|
+
* recorded as deleted and no longer pending, so it stays false after the owner's rows are removed. It does not
|
|
160
|
+
* authenticate an account.
|
|
159
161
|
*/
|
|
160
162
|
async permits(tx, scope) {
|
|
161
163
|
const row = await tx.get(`SELECT pending,deleted FROM ${this.t.blocks}
|
|
@@ -291,7 +293,8 @@ export class SourceRevocations {
|
|
|
291
293
|
/**
|
|
292
294
|
* Account deletion: blocks the owner for good and stops every connection of the owner, queueing each grant for
|
|
293
295
|
* revocation, in one transaction, also when the owner has no connection; then purges them. Call it before the host
|
|
294
|
-
* removes any source, credential or account row. Queued revocations outlive the account
|
|
296
|
+
* removes any source, credential or account row. Queued revocations outlive the account, and the block marker
|
|
297
|
+
* outlives `removeOwner`: it stays recorded as deleted, no longer pending, so `permits` stays false.
|
|
295
298
|
*/
|
|
296
299
|
async deleteOwner(scope) {
|
|
297
300
|
await this.stored(async () => {
|
|
@@ -592,6 +595,87 @@ export class SourceRevocations {
|
|
|
592
595
|
return (exchanges.changes ?? 0) + (changed.changes ?? 0);
|
|
593
596
|
});
|
|
594
597
|
}
|
|
598
|
+
/**
|
|
599
|
+
* Removes a deleted owner's rows in one transaction once nothing about them is pending: from the store, each of its
|
|
600
|
+
* connections with their work rows, retained-source provenance and exclusions (`SqlAccountSourceSyncStore.removeOwner`),
|
|
601
|
+
* and from these tables its stop intents, the revoke-only queue rows they and its exchanges refer to, its grant leases
|
|
602
|
+
* and its exchanges. It waits while the deletion's purge is pending, while a revocation of one of its grants is
|
|
603
|
+
* pending, and until a day after its last exchange ended: a grant can still come back for that exchange and must find
|
|
604
|
+
* its record to be queued for revocation. The owner's block marker stays, recording the deletion, so `permits` and
|
|
605
|
+
* `canConnect` stay false and the owner is refused for good, even while the host's account row still reads active.
|
|
606
|
+
* The core fence's owner row and its deletion records stay too.
|
|
607
|
+
*
|
|
608
|
+
* @returns `removed`, `pending` or `not_deleted`, as `SourceOwnerRemoval` describes.
|
|
609
|
+
* @throws {SourceSyncFault} `storage_unavailable` when the store fails.
|
|
610
|
+
*/
|
|
611
|
+
async removeOwner(scope) {
|
|
612
|
+
return this.stored(async () => {
|
|
613
|
+
// The deletion is recorded for good, so it is read before the store's locks and read again under them.
|
|
614
|
+
const recorded = await this.db.get(`SELECT deleted FROM ${this.t.blocks}
|
|
615
|
+
WHERE tenant_id=$1 AND owner_id=$2`, ownerFields(scope));
|
|
616
|
+
if (!recorded?.deleted)
|
|
617
|
+
return 'not_deleted';
|
|
618
|
+
const outcome = { unrecorded: false, rows: 0 };
|
|
619
|
+
const removed = await this.store.removeOwner(scope, async (tx) => {
|
|
620
|
+
const block = await tx.get(`SELECT pending,deleted FROM ${this.t.blocks}
|
|
621
|
+
WHERE tenant_id=$1 AND owner_id=$2 FOR UPDATE`, ownerFields(scope));
|
|
622
|
+
if (!block?.deleted) {
|
|
623
|
+
outcome.unrecorded = true;
|
|
624
|
+
return false;
|
|
625
|
+
}
|
|
626
|
+
if (block.pending || await tx.get(`SELECT 1 FROM ${this.t.intents}
|
|
627
|
+
WHERE tenant_id=$1 AND owner_id=$2 AND purged=FALSE LIMIT 1`, ownerFields(scope)))
|
|
628
|
+
return false;
|
|
629
|
+
if (await tx.get(`SELECT 1 FROM ${this.t.exchanges} WHERE tenant_id=$1 AND owner_id=$2 AND ends_at>=$3 LIMIT 1`, [...ownerFields(scope), this.now() - 86_400_000]))
|
|
630
|
+
return false;
|
|
631
|
+
const queued = await tx.all(`SELECT id,state FROM ${this.t.queue}
|
|
632
|
+
WHERE id IN (SELECT queue_id FROM ${this.t.intents} WHERE tenant_id=$1 AND owner_id=$2
|
|
633
|
+
UNION SELECT queue_id FROM ${this.t.exchanges} WHERE tenant_id=$1 AND owner_id=$2) FOR UPDATE`, ownerFields(scope));
|
|
634
|
+
if (queued.some((row) => row.state === 'pending'))
|
|
635
|
+
return false;
|
|
636
|
+
outcome.rows += (await tx.run(`DELETE FROM ${this.t.queue} WHERE id=ANY($1::text[]) AND state<>'pending'`, [queued.map((row) => row.id)])).changes ?? 0;
|
|
637
|
+
for (const table of [this.t.intents, this.t.exchanges, this.t.grants]) {
|
|
638
|
+
outcome.rows += (await tx.run(`DELETE FROM ${table} WHERE tenant_id=$1 AND owner_id=$2`, ownerFields(scope))).changes ?? 0;
|
|
639
|
+
}
|
|
640
|
+
return true;
|
|
641
|
+
});
|
|
642
|
+
if (removed && outcome.rows > 0)
|
|
643
|
+
this.emit('removed');
|
|
644
|
+
return removed ? 'removed' : outcome.unrecorded ? 'not_deleted' : 'pending';
|
|
645
|
+
});
|
|
646
|
+
}
|
|
647
|
+
/**
|
|
648
|
+
* Removes, as `removeOwner` does, the rows of at most `limit` deleted owners a call: those with rows left to remove
|
|
649
|
+
* and nothing pending, the first by key, for a host whose own records of a deleted account are gone. Run it on a
|
|
650
|
+
* schedule beside `revokeBatch` and `compact`; an owner whose purge, revocation or exchange is not over waits for a
|
|
651
|
+
* later call, and an owner already removed is not taken again.
|
|
652
|
+
*
|
|
653
|
+
* @param limit - At most this many owners, an integer from 1 to 1,000.
|
|
654
|
+
* @returns How many owners' rows were removed.
|
|
655
|
+
* @throws {SourceSyncFault} `invalid_response` for another limit and `storage_unavailable` when the store fails.
|
|
656
|
+
*/
|
|
657
|
+
async removeDeletedOwners(limit = 100) {
|
|
658
|
+
if (!Number.isInteger(limit) || limit < 1 || limit > 1000)
|
|
659
|
+
throw new SourceSyncFault('invalid_response');
|
|
660
|
+
return this.stored(async () => {
|
|
661
|
+
const owners = await this.db.all(`SELECT b.tenant_id,b.owner_id
|
|
662
|
+
FROM ${this.t.blocks} b WHERE b.deleted AND NOT b.pending
|
|
663
|
+
AND (EXISTS(SELECT 1 FROM ${this.t.intents} i WHERE i.tenant_id=b.tenant_id AND i.owner_id=b.owner_id)
|
|
664
|
+
OR EXISTS(SELECT 1 FROM ${this.t.exchanges} e WHERE e.tenant_id=b.tenant_id AND e.owner_id=b.owner_id)
|
|
665
|
+
OR EXISTS(SELECT 1 FROM ${this.t.grants} g WHERE g.tenant_id=b.tenant_id AND g.owner_id=b.owner_id))
|
|
666
|
+
AND NOT EXISTS(SELECT 1 FROM ${this.t.intents} i LEFT JOIN ${this.t.queue} q ON q.id=i.queue_id
|
|
667
|
+
WHERE i.tenant_id=b.tenant_id AND i.owner_id=b.owner_id AND (NOT i.purged OR q.state='pending'))
|
|
668
|
+
AND NOT EXISTS(SELECT 1 FROM ${this.t.exchanges} e LEFT JOIN ${this.t.queue} q ON q.id=e.queue_id
|
|
669
|
+
WHERE e.tenant_id=b.tenant_id AND e.owner_id=b.owner_id AND (e.ends_at>=$1 OR q.state='pending'))
|
|
670
|
+
ORDER BY b.tenant_id,b.owner_id LIMIT $2`, [this.now() - 86_400_000, limit]);
|
|
671
|
+
let removed = 0;
|
|
672
|
+
for (const row of owners) {
|
|
673
|
+
if (await this.removeOwner({ tenantId: row.tenant_id, ownerId: row.owner_id }) === 'removed')
|
|
674
|
+
removed++;
|
|
675
|
+
}
|
|
676
|
+
return removed;
|
|
677
|
+
});
|
|
678
|
+
}
|
|
595
679
|
/** Records exchanges whose deadline passed with no grant returned as unconfirmed: their outcome is unknown. */
|
|
596
680
|
async lapseExchanges() {
|
|
597
681
|
const now = this.now();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SourceRevocations.js","sourceRoot":"","sources":["../../src/sync/SourceRevocations.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EACL,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,GAE5D,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,qHAAqH;AACrH,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC;AACxC;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAsB;IACzD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,oBAAoB,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;AACnG,CAAC;AAqHD,MAAM,MAAM,GAAG,CAAC,CAAkB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;AAC/E,MAAM,WAAW,GAAG,CAAC,CAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;AACrE,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAC7E,MAAM,GAAG,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC;AACpG,uGAAuG;AACvG,MAAM,WAAW,GAAG,MAAM,CAAC;AAC3B,wEAAwE;AACxE,MAAM,eAAgB,SAAQ,KAAK;IAAG,gBAAgB,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;CAAE;AAC3F,yFAAyF;AACzF,MAAM,OAAO,GAAyD;IACpE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,2BAA2B,EAAE,CAAC;CACxE,CAAC;AACF,8GAA8G;AAC9G,SAAS,cAAc,CAAC,GAA0B;IAChD,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,KAAK,WAAW,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO;QAAE,OAAO,YAAY,CAAC;IACxF,IAAI,GAAG,CAAC,OAAO,KAAK,aAAa;QAAE,OAAO,6BAA6B,CAAC;IACxE,IAAI,CAAC,GAAG,CAAC,QAAQ;QAAE,OAAO,YAAY,CAAC;IACvC,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC,OAAO,KAAK,MAAM,IAAI,GAAG,CAAC,WAAW,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;IACpH,OAAO,GAAG,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,6BAA6B,CAAC;AACjF,CAAC;AACD,SAAS,MAAM,CAAC,MAAM,GAAG,uBAAuB;IAC9C,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAChG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,MAAM,UAAU,EAAE,OAAO,EAAE,IAAI,MAAM,WAAW;QAC3E,KAAK,EAAE,IAAI,MAAM,SAAS,EAAE,MAAM,EAAE,IAAI,MAAM,gBAAgB,EAAE,SAAS,EAAE,IAAI,MAAM,aAAa,EAAE,CAAC;AACzG,CAAC;AACD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAM,GAAG,uBAAuB;IACrE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACzB,OAAO;QACL,8BAA8B,CAAC,CAAC,MAAM;;uCAEH;QACnC,8BAA8B,CAAC,CAAC,OAAO;;;;qDAIU;QACjD,8BAA8B,CAAC,CAAC,KAAK;;;;;qDAKY;QACjD,+BAA+B,MAAM,YAAY,CAAC,CAAC,KAAK,oCAAoC;QAC5F,8BAA8B,CAAC,CAAC,MAAM;;qDAEW;QACjD,8BAA8B,CAAC,CAAC,SAAS;;;iEAGoB;QAC7D,+BAA+B,MAAM,uBAAuB,CAAC,CAAC,SAAS,oCAAoC;QAC3G,+BAA+B,MAAM,qBAAqB,CAAC,CAAC,SAAS;gDACzB;KAC7C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,iBAAiB;IAUC;IAAqC;IATjD,CAAC,CAA4B;IAC7B,KAAK,CAAsC;IAC3C,KAAK,CAAe;IACrC;;;;;OAKG;IACH,YAA6B,EAAkB,EAAmB,OAA0C;QAA/E,OAAE,GAAF,EAAE,CAAgB;QAAmB,YAAO,GAAP,OAAO,CAAmC;QAC1G,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC3H,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC;IAC3G,CAAC;IACO,GAAG;QACT,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,qBAAqB;YAAE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;QAChG,OAAO,GAAG,CAAC;IACb,CAAC;IACO,IAAI,CAAC,KAAqC,EAAE,CAAC,GAAG,CAAC;QACvD,IAAI,CAAC;YAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,oCAAoC,CAAC,CAAC;IACxH,CAAC;IACO,KAAK,CAAC,MAAM,CAAI,IAAsB;QAC5C,IAAI,CAAC;YAAC,OAAO,MAAM,IAAI,EAAE,CAAC;QAAC,CAAC;QAC5B,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,KAAK,YAAY,eAAe;gBAAE,MAAM,KAAK,CAAC;YAAC,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,CAAC;QAAC,CAAC;IACxH,CAAC;IACO,KAAK,CAAC,EAAkB,EAAE,KAAsB;QACtD,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7H,CAAC;IACO,OAAO,CAAC,EAAU,IAAY,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAExG;;;OAGG;IACH,KAAK,CAAC,OAAO,CAAC,EAAkB,EAAE,KAAuB;QACvD,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,GAAG,CAAyC,+BAA+B,IAAI,CAAC,CAAC,CAAC,MAAM;yCACxE,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IACD;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,EAAkB,EAAE,KAAuB;QAC1D,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACjD,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IACD;;;;;OAKG;IACK,KAAK,CAAC,OAAO,CAAC,EAAkB,EAAE,KAAuB,EAAE,MAAqB;QACtF,IAAI,MAAM,EAAE,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,CAAC,CAAC,OAAO,gBAAgB,IAAI,CAAC,CAAC,CAAC,KAAK;;4HAE4C,EACtH,WAAW,CAAC,KAAK,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QACnC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,CAAC,CAAC,SAAS,gBAAgB,IAAI,CAAC,CAAC,CAAC,KAAK;;;;;uEAKhB,EAAE,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACxG,CAAC;IACD;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,KAAsB;QACjC,OAAO,IAAI,CAAC,MAAM,CAAyB,KAAK,IAAI,EAAE;YACpD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAC3B,2CAA2C,IAAI,CAAC,CAAC,CAAC,OAAO,gBAAgB,IAAI,CAAC,CAAC,CAAC,KAAK;wEACrB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACnF,MAAM,OAAO,GAAyC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,YAAY;gBACjF,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,6BAA6B,CAAC;YAClH,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAiB;6BAC3C,IAAI,CAAC,CAAC,CAAC,SAAS,gBAAgB,IAAI,CAAC,CAAC,CAAC,KAAK;mHAC0C,EAC3G,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClB,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,KAAK,KAAK;gBAC1C,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QAC5E,CAAC,CAAC,CAAC;IACL,CAAC;IACO,KAAK,CAAC,KAAK,CAAC,EAAkB,EAAE,KAAuB,EAAE,OAAgB;QAC/E,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,MAAM;2EAC8B,IAAI,CAAC,CAAC,CAAC,MAAM,8BAA8B,EAChH,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IACtC,CAAC;IACO,KAAK,CAAC,KAAK,CAAC,EAAkB,EAAE,KAAsB,EAAE,MAA8B;QAC5F,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,KAAK,iBAAiB,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,GAAG,CAAS,iBAAiB,IAAI,CAAC,CAAC,CAAC,OAAO;yEACA,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACtF,IAAI,OAAO,GAAG,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC;QACzC,IAAI,YAAY,GAAG,QAAQ,EAAE,YAAY,IAAI,KAAK,CAAC;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAAC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC5F,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACjB,IAAI,QAAQ,EAAE,QAAQ,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC;gBAAE,MAAM,IAAI,eAAe,CAAC,gBAAgB,CAAC,CAAC;YACjH,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;YAAC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAAC,IAAI,MAAM,GAAkB,IAAI,CAAC;YAClF,uFAAuF;YACvF,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,IAAI,gBAAgB,CAAC,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC,EAAE,EAC5G,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACxF,MAAM,KAAK,GAAG,KAAK,EAAE,YAAY,CAAC;gBAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC;oBAC5E,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5G,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBAAC,MAAM,GAAG,IAAI,CAAC;YAAC,CAAC;YAC1B,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,KAAK;+BACf,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,GAAG,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;YAC5G,OAAO,GAAG,EAAE,CAAC;YAAC,YAAY,GAAG,KAAK,CAAC;QACrC,CAAC;QACD,2EAA2E;QAC3E,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACpD,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,MAAM,0DAA0D,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACpH,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,OAAO;;;oEAGsB,EAC9D,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;IACvF,CAAC;IACO,KAAK,CAAC,eAAe,CAAC,EAAkB,EAAE,MAAc;QAC9D,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,GAAG,CAA+B,qBAAqB,IAAI,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7H,OAAO,KAAK,EAAE,KAAK,KAAK,WAAW,IAAI,CAAC,KAAK,EAAE,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC;IAC7F,CAAC;IACD;;;;;;;;OAQG;IACH,KAAK,CAAC,UAAU,CAAC,KAAsB,EAAE,UAAkB;QACzD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC5B,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAC3D,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,EAAE,UAAU,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC/E,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAAC,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAAC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,MAAwB,EAAE,MAA+C;QACvF,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;YACjC,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EACnE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;gBAAE,OAAO,KAAK,CAAC;YACtE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAAC,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAAC,OAAO,IAAI,CAAC;QACnE,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,KAAuB;QACvC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC3B,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE;gBAC1D,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAClC,KAAK,MAAM,KAAK,IAAI,MAAM;oBAAE,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC;gBAC3E,IAAI,CAAC,MAAM,CAAC,MAAM;oBAAE,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,MAAM;6CACnB,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAAC,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IACD,uFAAuF;IACvF,KAAK,CAAC,OAAO,CAAC,KAAsB,IAAmB,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChF,KAAK,CAAC,YAAY,CAAC,KAAuB;QAChD,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC3B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAS,iBAAiB,IAAI,CAAC,CAAC,CAAC,OAAO;mFACI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YACnG,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAoB,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;gBAC7H,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACxC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;oBAC9F,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,OAAO;kGACmC,EACtF,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACrC,IAAI,OAAO,CAAC,OAAO,KAAK,CAAC;wBAAE,OAAO;oBAClC,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,MAAM,qCAAqC,IAAI,CAAC,CAAC,CAAC,OAAO;oGACG,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;gBACnH,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,SAAS;oBAAE,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,CAAC;gBACjE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAAC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;;;;;;OAOG;IACH,KAAK,CAAC,kBAAkB,CAAC,KAAsB;QAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC5B,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;gBACpD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,CAAS,iBAAiB,IAAI,CAAC,CAAC,CAAC,OAAO;6EACE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtF,IAAI,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACtC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,GAAG,CAAW,iBAAiB,IAAI,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACnG,IAAI,GAAG,EAAE,KAAK,KAAK,SAAS,IAAI,GAAG,EAAE,KAAK,KAAK,WAAW,EAAE,CAAC;wBAC3D,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,OAAO;sEACqB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;wBAC3E,YAAY,GAAG,IAAI,CAAC;oBACtB,CAAC;gBACH,CAAC;gBACD,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBAChC,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,SAAS;;;2CAGtB,IAAI,CAAC,CAAC,CAAC,KAAK,oEAAoE,EACjH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjB,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC;oBAAE,YAAY,GAAG,IAAI,CAAC;YACxD,CAAC,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAAC,OAAO,YAAY,CAAC;QAC9D,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,SAAS,CAAI,MAAwB,EACzC,IAAmE,EAAE,MAAoB;QACzF,IAAI,MAAM,EAAE,OAAO;YAAE,MAAM,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;QAAC,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;QAC7D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;YACzF,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,GAAG,CAAa,2BAA2B,IAAI,CAAC,CAAC,CAAC,MAAM;2EACR,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,IAAI,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG;gBAAE,MAAM,IAAI,eAAe,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YACjG,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,MAAM;;gEAEiB,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC;YACrG,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC,CAAC;QACJ,IAAI,QAAQ,KAAK,IAAI;YAAE,MAAM,IAAI,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QAAC,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACjF,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,IAAI,MAAM,EAAE,OAAO;YAAE,KAAK,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,KAAK,EAAK,MAAgD,EAAc,EAAE;YACxF,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;gBAAE,MAAM,IAAI,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACpG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;gBACvF,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,GAAG,CAAa,2BAA2B,IAAI,CAAC,CAAC,CAAC,MAAM;6EACV,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtF,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE;oBAAE,MAAM,IAAI,eAAe,CAAC,gBAAgB,CAAC,CAAC;gBACtH,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC3D,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE;oBAAE,MAAM,IAAI,eAAe,CAAC,gBAAgB,CAAC,CAAC;gBAChH,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,CAAC,CAAC,CAAC,CAAC;YACJ,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,eAAe,CAAC,gBAAgB,CAAC,CAAC;YACzD,OAAO,MAAM,CAAC,KAAK,CAAC;QACtB,CAAC,CAAC;QACF,MAAM,MAAM,GAAqB;YAC/B,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChD,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAChE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SACvD,CAAC;QACF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YAC1I,MAAM,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;YAAC,OAAO,MAAM,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,eAAe,IAAI,KAAK,YAAY,iBAAiB;gBAAE,MAAM,KAAK,CAAC;YACxF,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,CAAC;QACnD,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;YAAC,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACjE,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;gBAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,MAAM;6EACP,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;YAAC,CAAC,CAAC,CAAC;QAC1G,CAAC;IACH,CAAC;IACO,KAAK,CAAC,WAAW;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,KAAK;oCACxB,IAAI,CAAC,CAAC,CAAC,KAAK;6CACH,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC9B,CAAC;IACO,KAAK,CAAC,WAAW;QACvB,OAAO,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,GAAG,CAAW,iBAAiB,IAAI,CAAC,CAAC,CAAC,KAAK;;2DAEX,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9D,IAAI,CAAC,GAAG;gBAAE,OAAO,IAAI,CAAC;YACtB,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;YAAC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;YACzF,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,KAAK,oEAAoE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YACjI,OAAO,EAAE,GAAG,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;QACxF,CAAC,CAAC,CAAC;IACL,CAAC;IACO,KAAK,CAAC,YAAY,CAAC,GAAa,EAAE,KAA6C;QACrF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAAC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;QACrG,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,KAAK,KAAK,SAAS;YACjC,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,KAAK;kGACkD,EACxF,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;YACzC,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,KAAK;kGACkD,EACxF,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QAC7C,OAAO,OAAO,CAAC,OAAO,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,WAAW,CAAC,KAAK,GAAG,EAAE,EAAE,MAAoB;QAChD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG;YAAE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;QACxG,MAAM,GAAG,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;QACnF,IAAI,MAAM,EAAE,OAAO;YAAE,OAAO,GAAG,CAAC;QAChC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC5B,GAAG,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YACrE,IAAI,GAAG,CAAC,OAAO;gBAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBAAC,IAAI,CAAC,GAAG;oBAAE,MAAM;gBACtD,IAAI,KAAK,GAAsB,IAAI,CAAC;gBAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBACpD,IAAI,CAAC;oBACH,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE;wBAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;oBAC/F,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;oBACzH,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAC5C,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM;wBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;gBAC7F,CAAC;gBAAC,MAAM,CAAC;oBACP,IAAI,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,CAAC;wBAAC,GAAG,CAAC,UAAU,EAAE,CAAC;wBAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAAC,CAAC;oBAC9F,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;oBAAC,KAAK,GAAG,EAAE,CAAC;oBAAC,SAAS;gBACvC,CAAC;gBACD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;gBAAC,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACjF,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBACzD,IAAI,MAAM,EAAE,OAAO;oBAAE,KAAK,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC9G,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;gBACxD,IAAI,SAAS,GAAG,KAAK,CAAC;gBACtB,IAAI,CAAC;oBACH,IAAI,SAAS,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBAChD,GAAG,CAAC,SAAS,EAAE,CAAC;wBAChB,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBAC5D,SAAS,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBAChF,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBAAC,SAAS,GAAG,KAAK,CAAC;gBAAC,CAAC;wBACtB,CAAC;oBACP,YAAY,CAAC,KAAK,CAAC,CAAC;oBAAC,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;oBAAC,KAAK,GAAG,EAAE,CAAC;gBAC/F,CAAC;gBACD,IAAI,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;oBACtE,IAAI,SAAS,EAAE,CAAC;wBAAC,GAAG,CAAC,SAAS,EAAE,CAAC;wBAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBAAC,CAAC;yBACtD,CAAC;wBAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;wBAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAAC,CAAC;gBACjD,CAAC;YACH,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YAAC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC;YACjE,IAAI,OAAO;gBAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC3C,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;;;;;;;;;OAUG;IACH,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC;YACvC,4FAA4F;YAC5F,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,SAAS;2BAC9C,IAAI,CAAC,CAAC,CAAC,SAAS,gBAAgB,IAAI,CAAC,CAAC,CAAC,KAAK;;;uCAGhC,IAAI,CAAC,CAAC,CAAC,MAAM;;4CAER,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,KAAK;2BACxC,IAAI,CAAC,CAAC,CAAC,KAAK;uCACA,IAAI,CAAC,CAAC,CAAC,OAAO;uCACd,IAAI,CAAC,CAAC,CAAC,SAAS;oEACa,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YAC1E,OAAO,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC;IACD,+GAA+G;IACvG,KAAK,CAAC,cAAc;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,SAAS;uBACzC,IAAI,CAAC,CAAC,CAAC,SAAS;8FACuD,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACnG,OAAO,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;IAC9B,CAAC;IACD,qHAAqH;IAC7G,KAAK,CAAC,SAAS,CAAC,EAAkB,EAAE,KAAuB;QACjE,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,MAAM;iDACI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,MAAM,EAAE,CAAC,GAAG,CAAC,uBAAuB,IAAI,CAAC,CAAC,CAAC,MAAM,gDAAgD,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACzH,CAAC;IACO,aAAa,CAAC,QAA6B;QACjD,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,CAAC;QAC9B,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;eACrG,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAChG,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IACD,kGAAkG;IAC1F,KAAK,CAAC,WAAW,CAAC,EAAkB,EAAE,QAA6B;QACzE,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,GAAG,CAAc,iBAAiB,IAAI,CAAC,CAAC,CAAC,SAAS,yBAAyB,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QACjH,OAAO,GAAG,IAAI,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,KAAK,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,KAAK,CAAC,OAAO;eAC7F,GAAG,CAAC,aAAa,KAAK,QAAQ,CAAC,KAAK,CAAC,YAAY,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,UAAU;eACnG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7G,CAAC;IACD,6FAA6F;IACrF,KAAK,CAAC,eAAe,CAAC,EAAkB,EAAE,GAAgB;QAChE,IAAI,GAAG,CAAC,OAAO,KAAK,WAAW;YAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;QAC9D,IAAI,CAAC,GAAG,CAAC,QAAQ;YAAE,OAAO,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC;QAClE,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,GAAG,CAA+B,qBAAqB,IAAI,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1H,OAAO,KAAK,EAAE,KAAK,KAAK,SAAS,IAAI,KAAK,EAAE,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE;YAC7F,CAAC,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC;IAC9C,CAAC;IACD;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,aAAa,CAAC,EAAkB,EAAE,KAAsB,EAAE,UAAkB,EAChF,UAAkB;QAClB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC;eACxF,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC;YAAE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;QAC9E,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC5B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACpD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,IAAI,KAAK,CAAC,UAAU,KAAK,UAAU;gBAAE,OAAO,IAAI,CAAC;YAC5F,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAChC,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YACnD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAAC,MAAM,MAAM,GAAG,SAAS,GAAG,WAAW,CAAC;YACrE,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,SAAS;mGACgC,EAC3F,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;YACjE,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YACxC,MAAM,QAAQ,GAAwB,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM;gBACnF,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC;YAClG,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;;;;;OAMG;IACH,KAAK,CAAC,kBAAkB,CAAC,EAAkB,EAAE,QAA6B;QACxE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC5B,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;YAC7B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACpD,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAChC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACjD,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,CAAC,MAAM;mBAC/E,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,UAAU;gBAAE,OAAO,KAAK,CAAC;YACvG,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,GAAG,CAAW,iBAAiB,IAAI,CAAC,CAAC,CAAC,KAAK,yBAAyB,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5G,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,EAAE;gBAAE,OAAO,KAAK,CAAC;YACxF,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC/F,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;QAC7E,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,cAAc,CAAC,QAA6B,EAAE,KAAoB,EACtE,OAAuE;QACvE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;QACjF,MAAM,OAAO,GAAG,KAAK,EAAE,YAAY,CAAC;QACpC,MAAM,KAAK,GAAG,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7G,MAAM,OAAO,GAA+B,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC;QACpF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAA8C,EAAE;YACnH,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACjD,IAAI,CAAC,GAAG;gBAAE,OAAO,OAAO,CAAC;YACzB,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM;gBAAE,OAAO,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACjE,IAAI,GAAG,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAC;YAC9B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,SAAS,wCAAwC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC3F,OAAO,OAAO,CAAC;YACjB,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAAC,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;YAAC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAAC,MAAM,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC;YAC7G,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YAChH,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,KAAK;4CACF,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,GAAG,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG;gBACvF,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9C,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,SAAS,yCAAyC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC3H,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;QACnD,CAAC,CAAC,CAAC,CAAC;QACJ,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;gBACvD,IAAI,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC;oBAAE,OAAO,KAAK,CAAC;gBAC/D,IAAI,MAAM,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,CAAC,MAAM;oBAAE,MAAM,IAAI,eAAe,EAAE,CAAC;gBACpG,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBACjD,IAAI,CAAC,GAAG,EAAE,QAAQ;oBAAE,MAAM,IAAI,eAAe,EAAE,CAAC;gBAChD,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,KAAK,iCAAiC,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnG,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,SAAS,oDAAoD,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvG,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YACH,IAAI,SAAS;gBAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC,CAAC,kGAAkG,CAAC,CAAC;QAC9G,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAuC,EAAE;YAC7F,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACjD,IAAI,CAAC,GAAG;gBAAE,OAAO,OAAO,CAAC;YACzB,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAC3C,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,KAAK;6DACkB,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBAC3F,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,SAAS,oCAAoC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvF,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;YAC1B,CAAC;YACD,OAAO,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IACD;;;;;;;;;OASG;IACH,KAAK,CAAC,WAAW,CAAC,QAA6B,EAAE,OAAqD;QACpG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,OAAO,KAAK,gBAAgB,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;YACvF,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACvD,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACjD,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI;gBAAE,OAAO;YACpE,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,SAAS,6BAA6B,EAClE,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"SourceRevocations.js","sourceRoot":"","sources":["../../src/sync/SourceRevocations.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,8 @@ import { SqlSourceDerivationStore, type SourceDependency, type SourceDependencyS
|
|
|
9
9
|
import type { SourceSyncScope, SourceSyncState, SourceSyncPolicy, SourceSyncLease, SourceSyncTrigger, SourceSyncCheckpoint, SourceSyncCycleInput, SourceSyncPage, SourceSyncWork, SourceSyncDocument, SourceSyncMessageSpan, SourceSyncReadResult, SourceSyncWorkDisposition, SourceSyncTransition, SourceSyncRetryReason } from './types.js';
|
|
10
10
|
import type { SourceSyncOperationAttempt } from './coordinatorState.js';
|
|
11
11
|
/**
|
|
12
|
-
* The provenance kept for one retained source: its dependency, message spans, activity time, character count
|
|
13
|
-
*
|
|
12
|
+
* The provenance kept for one retained source: its dependency, message spans, activity time, character count, content
|
|
13
|
+
* hash and the hash of its text, never its text.
|
|
14
14
|
*/
|
|
15
15
|
export interface SourceSyncStoredDocument {
|
|
16
16
|
readonly dependency: SourceDependency;
|
|
@@ -18,6 +18,13 @@ export interface SourceSyncStoredDocument {
|
|
|
18
18
|
readonly activityAt: number;
|
|
19
19
|
readonly characters: number;
|
|
20
20
|
readonly contentHash: string;
|
|
21
|
+
/**
|
|
22
|
+
* SHA-256 of the sanitized text in lower-case hex, which the store computes for each copy it writes or refreshes;
|
|
23
|
+
* absent from a copy an earlier release wrote. It shows whether a later read repeats or begins with this copy's
|
|
24
|
+
* text. Like a connector's `contentHash`, it confirms a guessed text, so the documents table is content for access,
|
|
25
|
+
* retention and backups.
|
|
26
|
+
*/
|
|
27
|
+
readonly textHash?: string;
|
|
21
28
|
}
|
|
22
29
|
/** The host's limits for one connection, read under the owner fence in the transaction that uses them. */
|
|
23
30
|
export interface SourceSyncAllowance {
|
|
@@ -49,6 +56,13 @@ export interface SourceSyncStorageBindings<Prepared> {
|
|
|
49
56
|
purgeResults(tx: StorageAdapter, scope: SourceOwnerScope, ids: readonly string[]): Promise<void>;
|
|
50
57
|
/** Moves this connection's host rows to a new generation without changing their content, version or expiry. */
|
|
51
58
|
rebind(tx: StorageAdapter, scope: SourceSyncScope, generation: number): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* Optional. Moves one source's host rows to `dependency`, its generation and expiry, and to the document's message
|
|
61
|
+
* windows, without changing their text, passages or version. The store calls it in place of a purge, a write and a
|
|
62
|
+
* charge when a read holds the same version and content as the copy it keeps; a host without it has that copy
|
|
63
|
+
* removed and written again from a fresh preparation, with no indexing charge.
|
|
64
|
+
*/
|
|
65
|
+
refresh?(tx: StorageAdapter, scope: SourceSyncScope, dependency: SourceDependency, document: SourceSyncDocument): Promise<void>;
|
|
52
66
|
}
|
|
53
67
|
/** The store's table prefixes, clock and host bindings. */
|
|
54
68
|
export interface SourceSyncStoreOptions<Prepared> {
|
|
@@ -101,17 +115,43 @@ export interface SourceSyncSnapshot {
|
|
|
101
115
|
*/
|
|
102
116
|
readonly lastReconcileAt: number | null;
|
|
103
117
|
}
|
|
104
|
-
/**
|
|
118
|
+
/**
|
|
119
|
+
* What applying one read result answers: the handle to use next and the work's disposition. A document applied with no
|
|
120
|
+
* prepared value that the store has to write answers `pending` with the same handle and records nothing; apply it again
|
|
121
|
+
* with its prepared value.
|
|
122
|
+
*/
|
|
105
123
|
export interface SourceSyncApplication {
|
|
106
124
|
readonly handle: SourceSyncHandle;
|
|
107
125
|
readonly disposition: SourceSyncWorkDisposition;
|
|
108
126
|
}
|
|
127
|
+
/**
|
|
128
|
+
* What one `sweepExpired` did: the sources it removed, and the owners whose removal or whose derived results' expiry
|
|
129
|
+
* failed, left for a later sweep.
|
|
130
|
+
*/
|
|
131
|
+
export interface SourceSyncSweep {
|
|
132
|
+
readonly removed: number;
|
|
133
|
+
readonly failed: number;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Thrown by `expire` when it fails after removing at least one source. Each removal committed in a transaction of its
|
|
137
|
+
* own, so `partial` counts them in `removed`, with the failure itself in `failed`; `cause` holds the failure, whose
|
|
138
|
+
* message this error carries.
|
|
139
|
+
*/
|
|
140
|
+
export declare class SourceSyncExpiryError extends Error {
|
|
141
|
+
readonly partial: {
|
|
142
|
+
readonly removed: number;
|
|
143
|
+
readonly failed: number;
|
|
144
|
+
};
|
|
145
|
+
constructor(removed: number, cause: unknown);
|
|
146
|
+
}
|
|
109
147
|
/**
|
|
110
148
|
* Durable synchronization state for account sources on PostgreSQL. Every change to an owner's content runs under
|
|
111
149
|
* that owner's fence (`fence`), and a change made with a handle checks its lease, generation and host liveness in
|
|
112
|
-
* the same transaction. Applying a source purges its old copy and every derived result that depends on it
|
|
113
|
-
* replacement is written.
|
|
114
|
-
*
|
|
150
|
+
* the same transaction. Applying a changed source purges its old copy and every derived result that depends on it
|
|
151
|
+
* before the replacement is written. A read that repeats the text of a copy the store holds is never charged again,
|
|
152
|
+
* and with the host's `refresh` binding a read of that very copy keeps it in place. Provider reads, embedding and model
|
|
153
|
+
* calls stay outside the store. The constructor runs no DDL: the host's migration runs `sourceSyncSchema` and core's
|
|
154
|
+
* `sourceDerivationSchema` first.
|
|
115
155
|
*
|
|
116
156
|
* @typeParam Prepared - The host's in-memory value for one document, passed through to its `write` binding.
|
|
117
157
|
*/
|
|
@@ -245,14 +285,23 @@ export declare class SqlAccountSourceSyncStore<Prepared = unknown> {
|
|
|
245
285
|
private choose;
|
|
246
286
|
/**
|
|
247
287
|
* Applies one read result for a work item taken in this cycle, under a live lease and the owner fence. A retry
|
|
248
|
-
* keeps the work unresolved.
|
|
249
|
-
*
|
|
250
|
-
*
|
|
251
|
-
*
|
|
288
|
+
* keeps the work unresolved. A document is weighed first: excluded, outside the retained limits or, unless it
|
|
289
|
+
* repeats the text of a copy the store still holds, over the indexing allowance, it is recorded as a skip with its
|
|
290
|
+
* reason. A document that fits replaces the source's old copy in the same transaction (host write, indexing charge
|
|
291
|
+
* and provenance), after the old copy and every result derived from it are purged, evicting this connection's older
|
|
292
|
+
* sources the limits no longer admit. A read that repeats the text and message spans of a copy the store still holds,
|
|
293
|
+
* within its expiry and window, adds nothing to index and is never charged. When it also repeats the copy's version
|
|
294
|
+
* and content hash, the host's `refresh` binding keeps the copy, with every result derived from it, and gives it the
|
|
295
|
+
* read's expiry and message windows; otherwise the copy is written again from a fresh preparation. A skip and every
|
|
296
|
+
* other result purge the old copy, except an `indexing_limit` skip that finds the copy still held, still admitted as
|
|
297
|
+
* it is by the retained limits and the read beginning with its text, every message of it at the same span: that
|
|
298
|
+
* copy, admitted and charged under an earlier read, stays with the shorter of its own and the read's expiry.
|
|
252
299
|
*
|
|
253
|
-
* @param prepared - The host's prepared value for a document result; null for any other result
|
|
254
|
-
*
|
|
255
|
-
*
|
|
300
|
+
* @param prepared - The host's prepared value for a document result; null for any other result, and for a document
|
|
301
|
+
* weighed before its preparation.
|
|
302
|
+
* @returns The disposition and the handle later calls use, whose ticket reflects any purge; `pending` with the same
|
|
303
|
+
* handle, and nothing recorded, for a document without its prepared value that the store has to write; null for a
|
|
304
|
+
* stale handle or work item.
|
|
256
305
|
* @throws {SourceSyncFault} `invalid_response` for a result that does not match its work item or is malformed.
|
|
257
306
|
* @throws {Error} `invalid_source_allowance` when the host's allowance is not made of nonnegative safe integers.
|
|
258
307
|
*/
|
|
@@ -370,13 +419,53 @@ export declare class SqlAccountSourceSyncStore<Prepared = unknown> {
|
|
|
370
419
|
resetExclusions(scope: SourceSyncScope): Promise<void>;
|
|
371
420
|
/**
|
|
372
421
|
* Removes retained sources whose expiry has passed, with every result derived from them, also while the connection
|
|
373
|
-
* is paused, then expires the owner's derived results.
|
|
374
|
-
* reads refuse an expired source regardless.
|
|
422
|
+
* is paused or the owner's fence is inactive, then expires the owner's derived results. An inactive owner, such as a
|
|
423
|
+
* suspended account or one a control's barrier holds, stays inactive; reads refuse an expired source regardless.
|
|
424
|
+
* Each source goes in a transaction of its own, so a later failure leaves the removals before it in place.
|
|
375
425
|
*
|
|
376
426
|
* @param limit - At most this many sources, an integer from 1 to 1,000.
|
|
377
427
|
* @returns How many sources were removed.
|
|
378
|
-
* @throws {Error} `invalid_sync_batch` for another limit
|
|
428
|
+
* @throws {Error} `invalid_sync_batch` for another limit, and the failure itself when a removal or the results'
|
|
429
|
+
* expiry fails: once a source was removed, a `SourceSyncExpiryError` with the failure's message, the failure as its
|
|
430
|
+
* `cause` and the removals made before it in `partial`.
|
|
379
431
|
*/
|
|
380
432
|
expire(scope: SourceSyncScope, limit?: number): Promise<number>;
|
|
433
|
+
/**
|
|
434
|
+
* Removes one retained source whose expiry has passed, with every result derived from it, under its owner's row
|
|
435
|
+
* lock, whether or not the owner's fence is active: the fence's invalidation advances the owner's epoch, so no handle
|
|
436
|
+
* from before it applies anything, and leaves an inactive owner inactive.
|
|
437
|
+
*
|
|
438
|
+
* @returns Whether it was removed: false when it is gone or its expiry has not passed, as after a later read moved it.
|
|
439
|
+
*/
|
|
440
|
+
private expireSource;
|
|
441
|
+
/**
|
|
442
|
+
* Removes retained sources whose expiry has passed from every connection, or from `owner`'s alone, the earliest
|
|
443
|
+
* expiry first, each with every result derived from it as `expire` does for one connection, however far a
|
|
444
|
+
* maintenance walk is from them and whether or not their owner's fence is active; then expires the derived results
|
|
445
|
+
* of each owner it removed a source of. The store's own expiry decides, which a policy change's prune and an
|
|
446
|
+
* indexing skip that keeps a copy may have shortened. An owner whose removal fails, as when its host purge keeps
|
|
447
|
+
* failing, is counted and left out of the call's later reads, so a call with up to `limit` such owners never holds
|
|
448
|
+
* back another owner's copies. An owner whose derived results then fail to expire is counted too, once; the call
|
|
449
|
+
* still answers every source it removed, and the other owners' results still expire.
|
|
450
|
+
*
|
|
451
|
+
* @param limit - At most this many sources, an integer from 1 to 1,000.
|
|
452
|
+
* @param owner - The owner whose sources alone are swept, or null for every owner.
|
|
453
|
+
* @returns The sources removed, and the owners whose removal or whose derived results' expiry failed.
|
|
454
|
+
* @throws {Error} `invalid_sync_batch` for another limit.
|
|
455
|
+
*/
|
|
456
|
+
sweepExpired(limit?: number, owner?: SourceOwnerScope | null): Promise<SourceSyncSweep>;
|
|
457
|
+
/**
|
|
458
|
+
* Removes a stopped owner's rows from the store in one transaction: every connection of the owner, with its work
|
|
459
|
+
* rows, retained-source provenance and exclusions, once each connection is disconnected with no barrier, lease, work
|
|
460
|
+
* or retained source. `remove` runs first in the same transaction, after the owner fence's row lock and the
|
|
461
|
+
* connections' row locks, for a lifecycle's own rows; `SourceRevocations.removeOwner` passes its own. The core
|
|
462
|
+
* fence's owner row and its deletion records stay: they hold no content, keep the owner's epoch ahead of any old
|
|
463
|
+
* handle, and a restore replays the deletion from them.
|
|
464
|
+
*
|
|
465
|
+
* @param remove - The lifecycle's removal in the same transaction; answering false rolls the whole call back.
|
|
466
|
+
* @returns Whether the owner's rows were removed: false, changing nothing, while a connection of the owner has not
|
|
467
|
+
* stopped or when `remove` answers false.
|
|
468
|
+
*/
|
|
469
|
+
removeOwner(owner: SourceOwnerScope, remove?: (tx: StorageAdapter) => Promise<boolean>): Promise<boolean>;
|
|
381
470
|
}
|
|
382
471
|
//# sourceMappingURL=SqlAccountSourceSyncStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SqlAccountSourceSyncStore.d.ts","sourceRoot":"","sources":["../../src/sync/SqlAccountSourceSyncStore.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EACL,wBAAwB,EACxB,KAAK,gBAAgB,EAAE,KAAK,qBAAqB,EAAE,KAAK,gBAAgB,EACxE,KAAK,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EACvE,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EACV,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,EACtF,oBAAoB,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAC1E,kBAAkB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,yBAAyB,EAC1F,oBAAoB,EAA+C,qBAAqB,EACzF,MAAM,YAAY,CAAC;AAMpB,OAAO,KAAK,EAAE,0BAA0B,EAA4B,MAAM,uBAAuB,CAAC;AAElG;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACpD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"SqlAccountSourceSyncStore.d.ts","sourceRoot":"","sources":["../../src/sync/SqlAccountSourceSyncStore.ts"],"names":[],"mappings":"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"}
|