@optimystic/db-p2p 0.24.2 → 0.25.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 → README.md} +688 -668
- package/dist/src/cluster/block-transfer-service.d.ts +133 -10
- package/dist/src/cluster/block-transfer-service.d.ts.map +1 -1
- package/dist/src/cluster/block-transfer-service.js +155 -9
- package/dist/src/cluster/block-transfer-service.js.map +1 -1
- package/dist/src/cluster/block-transfer.d.ts +67 -7
- package/dist/src/cluster/block-transfer.d.ts.map +1 -1
- package/dist/src/cluster/block-transfer.js +127 -24
- package/dist/src/cluster/block-transfer.js.map +1 -1
- package/dist/src/cluster/certified-claims.d.ts +170 -0
- package/dist/src/cluster/certified-claims.d.ts.map +1 -0
- package/dist/src/cluster/certified-claims.js +200 -0
- package/dist/src/cluster/certified-claims.js.map +1 -0
- package/dist/src/cluster/client-signature-verifier.d.ts +23 -0
- package/dist/src/cluster/client-signature-verifier.d.ts.map +1 -0
- package/dist/src/cluster/client-signature-verifier.js +33 -0
- package/dist/src/cluster/client-signature-verifier.js.map +1 -0
- package/dist/src/cluster/cluster-policy.d.ts +9 -3
- package/dist/src/cluster/cluster-policy.d.ts.map +1 -1
- package/dist/src/cluster/cluster-policy.js +111 -27
- package/dist/src/cluster/cluster-policy.js.map +1 -1
- package/dist/src/cluster/cluster-repo.d.ts +140 -11
- package/dist/src/cluster/cluster-repo.d.ts.map +1 -1
- package/dist/src/cluster/cluster-repo.js +485 -29
- package/dist/src/cluster/cluster-repo.js.map +1 -1
- package/dist/src/cluster/commit-proof.d.ts +134 -0
- package/dist/src/cluster/commit-proof.d.ts.map +1 -0
- package/dist/src/cluster/commit-proof.js +263 -0
- package/dist/src/cluster/commit-proof.js.map +1 -0
- package/dist/src/cluster/quorum-restore.d.ts +95 -8
- package/dist/src/cluster/quorum-restore.d.ts.map +1 -1
- package/dist/src/cluster/quorum-restore.js +113 -14
- package/dist/src/cluster/quorum-restore.js.map +1 -1
- package/dist/src/cluster/rebalance-monitor.d.ts +84 -0
- package/dist/src/cluster/rebalance-monitor.d.ts.map +1 -1
- package/dist/src/cluster/rebalance-monitor.js +207 -5
- package/dist/src/cluster/rebalance-monitor.js.map +1 -1
- package/dist/src/cluster/reconcile-block.d.ts +27 -7
- package/dist/src/cluster/reconcile-block.d.ts.map +1 -1
- package/dist/src/cluster/reconcile-block.js +179 -38
- package/dist/src/cluster/reconcile-block.js.map +1 -1
- package/dist/src/cluster/service.d.ts +13 -4
- package/dist/src/cluster/service.d.ts.map +1 -1
- package/dist/src/cluster/service.js +17 -18
- package/dist/src/cluster/service.js.map +1 -1
- package/dist/src/cluster/spread-on-churn.d.ts +8 -2
- package/dist/src/cluster/spread-on-churn.d.ts.map +1 -1
- package/dist/src/cluster/spread-on-churn.js +7 -7
- package/dist/src/cluster/spread-on-churn.js.map +1 -1
- package/dist/src/cohort-topic/host.d.ts.map +1 -1
- package/dist/src/cohort-topic/host.js +8 -7
- package/dist/src/cohort-topic/host.js.map +1 -1
- package/dist/src/cohort-topic/stream-util.d.ts +7 -6
- package/dist/src/cohort-topic/stream-util.d.ts.map +1 -1
- package/dist/src/cohort-topic/stream-util.js +14 -41
- package/dist/src/cohort-topic/stream-util.js.map +1 -1
- package/dist/src/dispute/cascade.d.ts +7 -8
- package/dist/src/dispute/cascade.d.ts.map +1 -1
- package/dist/src/dispute/cascade.js +24 -7
- package/dist/src/dispute/cascade.js.map +1 -1
- package/dist/src/dispute/dispute-service.d.ts +5 -0
- package/dist/src/dispute/dispute-service.d.ts.map +1 -1
- package/dist/src/dispute/dispute-service.js +13 -3
- package/dist/src/dispute/dispute-service.js.map +1 -1
- package/dist/src/dispute/invalidation.d.ts +33 -15
- package/dist/src/dispute/invalidation.d.ts.map +1 -1
- package/dist/src/dispute/invalidation.js +127 -34
- package/dist/src/dispute/invalidation.js.map +1 -1
- package/dist/src/dispute/service.d.ts.map +1 -1
- package/dist/src/dispute/service.js +2 -1
- package/dist/src/dispute/service.js.map +1 -1
- package/dist/src/index.d.ts +7 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +7 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/libp2p-key-network.d.ts +14 -10
- package/dist/src/libp2p-key-network.d.ts.map +1 -1
- package/dist/src/libp2p-key-network.js +28 -58
- package/dist/src/libp2p-key-network.js.map +1 -1
- package/dist/src/libp2p-node-base.d.ts +38 -7
- package/dist/src/libp2p-node-base.d.ts.map +1 -1
- package/dist/src/libp2p-node-base.js +148 -63
- package/dist/src/libp2p-node-base.js.map +1 -1
- package/dist/src/network/open-protocol-stream.d.ts +56 -0
- package/dist/src/network/open-protocol-stream.d.ts.map +1 -0
- package/dist/src/network/open-protocol-stream.js +60 -0
- package/dist/src/network/open-protocol-stream.js.map +1 -0
- package/dist/src/network/register-protocol-handler.d.ts +66 -0
- package/dist/src/network/register-protocol-handler.d.ts.map +1 -0
- package/dist/src/network/register-protocol-handler.js +51 -0
- package/dist/src/network/register-protocol-handler.js.map +1 -0
- package/dist/src/peer-address-book.d.ts +60 -2
- package/dist/src/peer-address-book.d.ts.map +1 -1
- package/dist/src/peer-address-book.js +89 -1
- package/dist/src/peer-address-book.js.map +1 -1
- package/dist/src/pend-validation.d.ts +65 -0
- package/dist/src/pend-validation.d.ts.map +1 -0
- package/dist/src/pend-validation.js +69 -0
- package/dist/src/pend-validation.js.map +1 -0
- package/dist/src/reactivity/notify-transport.d.ts.map +1 -1
- package/dist/src/reactivity/notify-transport.js +2 -1
- package/dist/src/reactivity/notify-transport.js.map +1 -1
- package/dist/src/reactivity/push-state-gossip.d.ts.map +1 -1
- package/dist/src/reactivity/push-state-gossip.js +2 -1
- package/dist/src/reactivity/push-state-gossip.js.map +1 -1
- package/dist/src/repo/cluster-coordinator.d.ts +32 -6
- package/dist/src/repo/cluster-coordinator.d.ts.map +1 -1
- package/dist/src/repo/cluster-coordinator.js +44 -10
- package/dist/src/repo/cluster-coordinator.js.map +1 -1
- package/dist/src/repo/coordinator-repo.d.ts +181 -25
- package/dist/src/repo/coordinator-repo.d.ts.map +1 -1
- package/dist/src/repo/coordinator-repo.js +650 -62
- package/dist/src/repo/coordinator-repo.js.map +1 -1
- package/dist/src/repo/served-repo-proxy.d.ts +30 -0
- package/dist/src/repo/served-repo-proxy.d.ts.map +1 -0
- package/dist/src/repo/served-repo-proxy.js +50 -0
- package/dist/src/repo/served-repo-proxy.js.map +1 -0
- package/dist/src/repo/service.d.ts +16 -1
- package/dist/src/repo/service.d.ts.map +1 -1
- package/dist/src/repo/service.js +18 -16
- package/dist/src/repo/service.js.map +1 -1
- package/dist/src/reputation/types.d.ts +3 -1
- package/dist/src/reputation/types.d.ts.map +1 -1
- package/dist/src/reputation/types.js +3 -1
- package/dist/src/reputation/types.js.map +1 -1
- package/dist/src/rn.d.ts +24 -2
- package/dist/src/rn.d.ts.map +1 -1
- package/dist/src/rn.js +33 -4
- package/dist/src/rn.js.map +1 -1
- package/dist/src/storage/block-archive.d.ts +153 -0
- package/dist/src/storage/block-archive.d.ts.map +1 -0
- package/dist/src/storage/block-archive.js +194 -0
- package/dist/src/storage/block-archive.js.map +1 -0
- package/dist/src/storage/block-latch.d.ts +92 -0
- package/dist/src/storage/block-latch.d.ts.map +1 -0
- package/dist/src/storage/block-latch.js +132 -0
- package/dist/src/storage/block-latch.js.map +1 -0
- package/dist/src/storage/block-storage.d.ts +169 -12
- package/dist/src/storage/block-storage.d.ts.map +1 -1
- package/dist/src/storage/block-storage.js +415 -152
- package/dist/src/storage/block-storage.js.map +1 -1
- package/dist/src/storage/cached-raw-storage.d.ts +5 -1
- package/dist/src/storage/cached-raw-storage.d.ts.map +1 -1
- package/dist/src/storage/cached-raw-storage.js +16 -1
- package/dist/src/storage/cached-raw-storage.js.map +1 -1
- package/dist/src/storage/cached-store-driver.d.ts +14 -4
- package/dist/src/storage/cached-store-driver.d.ts.map +1 -1
- package/dist/src/storage/cached-store-driver.js +39 -5
- package/dist/src/storage/cached-store-driver.js.map +1 -1
- package/dist/src/storage/i-block-storage.d.ts +70 -19
- package/dist/src/storage/i-block-storage.d.ts.map +1 -1
- package/dist/src/storage/i-block-storage.js +21 -1
- package/dist/src/storage/i-block-storage.js.map +1 -1
- package/dist/src/storage/i-raw-storage.d.ts +38 -0
- package/dist/src/storage/i-raw-storage.d.ts.map +1 -1
- package/dist/src/storage/kv-raw-storage.d.ts +14 -8
- package/dist/src/storage/kv-raw-storage.d.ts.map +1 -1
- package/dist/src/storage/kv-raw-storage.js +29 -9
- package/dist/src/storage/kv-raw-storage.js.map +1 -1
- package/dist/src/storage/memory-store-driver.d.ts +4 -1
- package/dist/src/storage/memory-store-driver.d.ts.map +1 -1
- package/dist/src/storage/memory-store-driver.js +22 -2
- package/dist/src/storage/memory-store-driver.js.map +1 -1
- package/dist/src/storage/raw-store-codec.js +2 -2
- package/dist/src/storage/raw-store-driver.d.ts +44 -3
- package/dist/src/storage/raw-store-driver.d.ts.map +1 -1
- package/dist/src/storage/shared-cache-pool.d.ts +60 -3
- package/dist/src/storage/shared-cache-pool.d.ts.map +1 -1
- package/dist/src/storage/shared-cache-pool.js +68 -4
- package/dist/src/storage/shared-cache-pool.js.map +1 -1
- package/dist/src/storage/storage-repo.d.ts +204 -26
- package/dist/src/storage/storage-repo.d.ts.map +1 -1
- package/dist/src/storage/storage-repo.js +422 -119
- package/dist/src/storage/storage-repo.js.map +1 -1
- package/dist/src/storage/store-identity.d.ts +21 -0
- package/dist/src/storage/store-identity.d.ts.map +1 -0
- package/dist/src/storage/store-identity.js +33 -0
- package/dist/src/storage/store-identity.js.map +1 -0
- package/dist/src/storage/struct.d.ts +15 -0
- package/dist/src/storage/struct.d.ts.map +1 -1
- package/dist/src/storage/with-read-cache.d.ts +92 -0
- package/dist/src/storage/with-read-cache.d.ts.map +1 -0
- package/dist/src/storage/with-read-cache.js +132 -0
- package/dist/src/storage/with-read-cache.js.map +1 -0
- package/dist/src/sync/service.d.ts +13 -3
- package/dist/src/sync/service.d.ts.map +1 -1
- package/dist/src/sync/service.js +7 -30
- package/dist/src/sync/service.js.map +1 -1
- package/dist/src/testing/mesh-harness.d.ts +75 -2
- package/dist/src/testing/mesh-harness.d.ts.map +1 -1
- package/dist/src/testing/mesh-harness.js +193 -81
- package/dist/src/testing/mesh-harness.js.map +1 -1
- package/dist/src/testing/raw-storage-conformance.d.ts +8 -0
- package/dist/src/testing/raw-storage-conformance.d.ts.map +1 -1
- package/dist/src/testing/raw-storage-conformance.js +97 -2
- package/dist/src/testing/raw-storage-conformance.js.map +1 -1
- package/package.json +5 -6
- package/src/cluster/block-transfer-service.ts +528 -312
- package/src/cluster/block-transfer.ts +547 -424
- package/src/cluster/certified-claims.ts +319 -0
- package/src/cluster/client-signature-verifier.ts +34 -0
- package/src/cluster/cluster-policy.ts +294 -203
- package/src/cluster/cluster-repo.ts +2501 -2034
- package/src/cluster/commit-proof.ts +344 -0
- package/src/cluster/quorum-restore.ts +348 -223
- package/src/cluster/rebalance-monitor.ts +539 -254
- package/src/cluster/reconcile-block.ts +404 -203
- package/src/cluster/service.ts +23 -20
- package/src/cluster/spread-on-churn.ts +352 -346
- package/src/cohort-topic/host.ts +8 -7
- package/src/cohort-topic/stream-util.ts +14 -43
- package/src/dispute/cascade.ts +31 -15
- package/src/dispute/dispute-service.ts +706 -696
- package/src/dispute/invalidation.ts +162 -52
- package/src/dispute/service.ts +126 -125
- package/src/index.ts +7 -0
- package/src/libp2p-key-network.ts +1204 -1235
- package/src/libp2p-node-base.ts +185 -70
- package/src/network/open-protocol-stream.ts +87 -0
- package/src/network/register-protocol-handler.ts +85 -0
- package/src/peer-address-book.ts +96 -2
- package/src/pend-validation.ts +89 -0
- package/src/reactivity/notify-transport.ts +2 -1
- package/src/reactivity/push-state-gossip.ts +2 -1
- package/src/repo/cluster-coordinator.ts +65 -11
- package/src/repo/coordinator-repo.ts +729 -71
- package/src/repo/served-repo-proxy.ts +55 -0
- package/src/repo/service.ts +25 -16
- package/src/reputation/types.ts +3 -1
- package/src/rn.ts +34 -4
- package/src/storage/block-archive.ts +242 -0
- package/src/storage/block-latch.ts +144 -0
- package/src/storage/block-storage.ts +787 -498
- package/src/storage/cached-raw-storage.ts +21 -1
- package/src/storage/cached-store-driver.ts +898 -859
- package/src/storage/i-block-storage.ts +172 -116
- package/src/storage/i-raw-storage.ts +40 -0
- package/src/storage/kv-raw-storage.ts +34 -9
- package/src/storage/memory-store-driver.ts +26 -2
- package/src/storage/raw-store-codec.ts +42 -42
- package/src/storage/raw-store-driver.ts +45 -3
- package/src/storage/shared-cache-pool.ts +516 -452
- package/src/storage/storage-repo.ts +1421 -1014
- package/src/storage/store-identity.ts +41 -0
- package/src/storage/struct.ts +52 -34
- package/src/storage/with-read-cache.ts +182 -0
- package/src/sync/service.ts +178 -198
- package/src/testing/mesh-harness.ts +524 -344
- package/src/testing/raw-storage-conformance.ts +114 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spread-on-churn.js","sourceRoot":"","sources":["../../../src/cluster/spread-on-churn.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAElC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"spread-on-churn.js","sourceRoot":"","sources":["../../../src/cluster/spread-on-churn.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../src/cohort-topic/host.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAsB,UAAU,EAAU,MAAM,mBAAmB,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,OAAO,EAuBN,MAAM,EA6BN,KAAK,qBAAqB,EAE1B,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EAEnB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EAEvB,KAAK,kBAAkB,EAEvB,KAAK,UAAU,EACf,KAAK,4BAA4B,EACjC,KAAK,gBAAgB,EACrB,KAAK,SAAS,EAGd,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAEhB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAG9B,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,SAAS,EAGd,KAAK,WAAW,EAChB,KAAK,aAAa,EAElB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EAEnB,KAAK,SAAS,EACd,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,yBAAyB,EAA2B,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../src/cohort-topic/host.ts"],"names":[],"mappings":"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"}
|
|
@@ -65,6 +65,7 @@ import { FretCohortThresholdCrypto, createVerifyOnlyThresholdCrypto } from "./th
|
|
|
65
65
|
import { FretTrustAnchor } from "./fret-trust-anchor.js";
|
|
66
66
|
import { FretSizeEstimator } from "./size-estimator.js";
|
|
67
67
|
import { peerIdToBytes, bytesToPeerIdString } from "./peer-codec.js";
|
|
68
|
+
import { registerProtocolHandler } from "../network/register-protocol-handler.js";
|
|
68
69
|
import { signPeer, verifyPeerSig } from "./peer-sig.js";
|
|
69
70
|
import { createPoWVerifier, createReputationVerifier } from "./bootstrap-evidence-verifiers.js";
|
|
70
71
|
import { createParentReferenceVerifier, createDefaultParentTopicView } from "./bootstrap-parent-reference.js";
|
|
@@ -469,7 +470,7 @@ export async function createCohortTopicHost(node, fret, options = {}) {
|
|
|
469
470
|
// --- protocol handlers + activity callback ---
|
|
470
471
|
// Await registration so the host is not returned (and dialed) before the five handlers are live —
|
|
471
472
|
// and, crucially, before the gossip driver below starts ticking (no tick may run on a half-wired node).
|
|
472
|
-
await
|
|
473
|
+
await registerCohortTopicProtocols(node, protocols, registry, dispatchRegister, childLinkDeps, minSigs, signEndorse, verifier, promoteGate, gossipTransport, maybeInstantiateColdSibling, publishSink, membershipSource, selfCoord, maxBytes);
|
|
473
474
|
fret.setActivityHandler(async (activity, cohort) => {
|
|
474
475
|
const decoded = decodeCohortMessage(b64urlToBytes(activity), maxBytes);
|
|
475
476
|
// Decode-and-branch: a `ChildLinkV1` (a child cohort registering with this parent) runs the child-link
|
|
@@ -1922,7 +1923,7 @@ function tierOfTopic(store, topicId) {
|
|
|
1922
1923
|
const recs = store.listByTopic(topicId);
|
|
1923
1924
|
return (recs.length > 0 ? recs[0].tier : 0);
|
|
1924
1925
|
}
|
|
1925
|
-
async function
|
|
1926
|
+
async function registerCohortTopicProtocols(node, protocols, registry, dispatchRegister,
|
|
1926
1927
|
/** Parent-side child-link dispatch deps + the quorum bound used to structurally validate an inbound link. */
|
|
1927
1928
|
childLinkDeps, minSigs, signEndorse, verifier, promoteGate, gossipTransport,
|
|
1928
1929
|
/** Instantiate a cold sibling's coord engine off a verified co-member frame (§Cold-start instantiation). */
|
|
@@ -1930,7 +1931,7 @@ maybeInstantiateColdSibling, publishSink, membershipSource, selfCoord, maxBytes)
|
|
|
1930
1931
|
await Promise.all([
|
|
1931
1932
|
// register: a direct dial carries a RenewV1 (ping), a ChildLinkV1 (a child cohort registering with this
|
|
1932
1933
|
// parent), or a RegisterV1 (re-attach walk fallback). The three shapes are disjoint, so try each in turn.
|
|
1933
|
-
node
|
|
1934
|
+
registerProtocolHandler(node, protocols.register, makeRequestHandler(async (frame) => {
|
|
1934
1935
|
const decoded = decodeCohortMessage(frame, maxBytes);
|
|
1935
1936
|
const renew = tryValidate(() => validateRenewV1(decoded));
|
|
1936
1937
|
if (renew !== undefined) {
|
|
@@ -1949,7 +1950,7 @@ maybeInstantiateColdSibling, publishSink, membershipSource, selfCoord, maxBytes)
|
|
|
1949
1950
|
// every coord engine's bus; per-bus epoch matching governs which engine merges the record deltas.
|
|
1950
1951
|
// First, if this is a verified co-member frame for a coord we hold no engine for, instantiate that
|
|
1951
1952
|
// engine (§Cold-start instantiation) so its freshly-subscribed bus merges this very frame on `deliver`.
|
|
1952
|
-
node
|
|
1953
|
+
registerProtocolHandler(node, protocols.gossip, makeOneWayHandler(async (frame, from) => {
|
|
1953
1954
|
maybeInstantiateColdSibling(frame);
|
|
1954
1955
|
gossipTransport.deliver(from.toString(), frame);
|
|
1955
1956
|
}, maxBytes)),
|
|
@@ -1957,11 +1958,11 @@ maybeInstantiateColdSibling, publishSink, membershipSource, selfCoord, maxBytes)
|
|
|
1957
1958
|
// peer arrives as `from`, so the handler can gate per-(peer, topic) before any expensive work. The
|
|
1958
1959
|
// full pipeline (rate limit → findServing → effectiveAt high-water → verify+apply, bounded
|
|
1959
1960
|
// refetch) lives in the exported `handleInboundNotice`; it logs and never throws on the stream.
|
|
1960
|
-
node
|
|
1961
|
+
registerProtocolHandler(node, protocols.promote, makeOneWayHandler(async (frame, from) => {
|
|
1961
1962
|
await handleInboundNotice(frame, peerIdToBytes(from), registry, verifier, promoteGate, Date.now(), maxBytes);
|
|
1962
1963
|
}, maxBytes)),
|
|
1963
1964
|
// membership: serve this node's latest published cert; cache any cert the requester returns.
|
|
1964
|
-
node
|
|
1965
|
+
registerProtocolHandler(node, protocols.membership, makeRequestHandler(async (frame) => {
|
|
1965
1966
|
void frame; // request frame is the raw coord; this node serves its own cohort cert
|
|
1966
1967
|
const latest = publishSink.latest();
|
|
1967
1968
|
if (latest !== undefined) {
|
|
@@ -1972,7 +1973,7 @@ maybeInstantiateColdSibling, publishSink, membershipSource, selfCoord, maxBytes)
|
|
|
1972
1973
|
// sign: per-member endorsement for threshold-signature assembly. Validate the request, run the
|
|
1973
1974
|
// endorsement policy, and reply with this node's peer-key signature over the request payload (or a
|
|
1974
1975
|
// refusal). One Ed25519 sign and nothing more — the cohort + epoch gate bounds who we sign for.
|
|
1975
|
-
node
|
|
1976
|
+
registerProtocolHandler(node, protocols.sign, makeRequestHandler(async (frame, from) => {
|
|
1976
1977
|
const request = validateSignRequestV1(decodeCohortMessage(frame, maxBytes));
|
|
1977
1978
|
const reply = await signEndorse(request, from.toString());
|
|
1978
1979
|
return encodeCohortMessage(reply, maxBytes);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.js","sourceRoot":"","sources":["../../../src/cohort-topic/host.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"host.js","sourceRoot":"","sources":["../../../src/cohort-topic/host.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAKH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC9D,OAAO,EACN,QAAQ,EACR,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC7B,kBAAkB,EAClB,wBAAwB,EACxB,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,4BAA4B,EAC5B,iBAAiB,EACjB,uBAAuB,EACvB,MAAM,EACN,WAAW,EACX,gBAAgB,EAChB,uBAAuB,EACvB,8BAA8B,EAC9B,aAAa,EACb,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,4BAA4B,EAC5B,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,EACtB,mBAAmB,EACnB,0BAA0B,EAC1B,6BAA6B,EAC7B,4BAA4B,EAC5B,uBAAuB,GA0CvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAA2B,MAAM,8BAA8B,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AACjJ,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAgC,MAAM,mCAAmC,CAAC;AAC9H,OAAO,EAAE,6BAA6B,EAAE,4BAA4B,EAAiC,MAAM,iCAAiC,CAAC;AAC7I,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,8BAA8B,EAAE,uBAAuB,EAA6B,MAAM,gBAAgB,CAAC;AACpH,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,GAAG,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;AA2bzC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAAY,EAAE,IAAiB,EAAE,UAAkC,EAAE;IAChH,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,WAAW,EAAE,CAAC;IACjD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,8BAA8B,CAAC;IACtE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;IAClC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,gBAAgB,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;IACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,wBAAwB,CAAC;IAC9D,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,0BAA0B,CAAC;IAChF,MAAM,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,IAAI,gCAAgC,CAAC;IAElG,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;IAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC3C,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB;IACzE,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,kDAAkD;IACnG,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEtD,mEAAmE;IACnE,MAAM,QAAQ,GAAuB;QACpC,WAAW,CAAC,KAAgB,EAAE,KAAa;YAC1C,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1C,CAAC;KACD,CAAC;IAEF,yEAAyE;IACzE,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,gBAAgB,EAAE,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnG,MAAM,aAAa,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,eAAe,GAAG,IAAI,yBAAyB,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,cAAc,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;IACnJ,MAAM,gBAAgB,GAAG,IAAI,oBAAoB,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,kBAAkB,EAAE,SAAS,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IACxI,MAAM,WAAW,GAAG,IAAI,yBAAyB,EAAE,CAAC;IAEpD,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IAExC,sGAAsG;IACtG,oGAAoG;IACpG,MAAM,eAAe,GAAG,kBAAkB,CAAC,+BAA+B,EAAE,EAAE,OAAO,CAAC,CAAC;IAEvF,+EAA+E;IAC/E,MAAM,QAAQ,GAAG,KAAK,EAAE,SAAiB,EAAE,OAAsB,EAAwB,EAAE;QAC1F,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,gBAAgB,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,IAAI,EAAE,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;QACzI,OAAO,mBAAmB,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC;IAEF,6FAA6F;IAC7F,MAAM,YAAY,GAAG,CAAC,KAAgB,EAAsB,EAAE;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,CAAC,eAAe,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7G,2FAA2F;QAC3F,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QACjE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IACjC,CAAC,CAAC;IAEF,oDAAoD;IACpD,kGAAkG;IAClG,6FAA6F;IAC7F,kGAAkG;IAClG,gGAAgG;IAChG,mGAAmG;IACnG,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC3E,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,KAAK,SAAS;QACzD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,CAAC,GAAe,EAAW,EAAE,CAC9B,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YACxB,aAAa,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IAChH,MAAM,oBAAoB,GAAG,OAAO,CAAC,UAAU,KAAK,SAAS;QAC5D,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,CAAC,KAAc,EAAW,EAAE,CAC7B,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAC1B,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhH,wDAAwD;IACxD,kGAAkG;IAClG,gGAAgG;IAChG,iGAAiG;IACjG,sGAAsG;IACtG,+BAA+B;IAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;IACnC,MAAM,UAAU,GAAG,OAAO,KAAK,SAAS;QACvC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,KAAK,EAAE,CAAuB,EAAmB,EAAE,CAAC,aAAa,CAAC,MAAM,QAAQ,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7H,MAAM,YAAY,GAAG,OAAO,KAAK,SAAS;QACzC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,CAAC,CAAiB,EAAE,KAAgB,EAAW,EAAE;YAClD,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,KAAK,CAAC;YACd,CAAC;YACD,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC9C,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;gBAC1F,OAAO,KAAK,CAAC;YACd,CAAC;YACD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACrE,OAAO,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC;IAEH,4CAA4C;IAC5C,oGAAoG;IACpG,iGAAiG;IACjG,+FAA+F;IAC/F,sCAAsC;IACtC,MAAM,eAAe,GAAG,CAAC,MAA4C,EAAE,WAAsB,EAAQ,EAAE;QACtG,MAAM,KAAK,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACpD,uGAAuG;QACvG,2GAA2G;QAC3G,2GAA2G;QAC3G,wGAAwG;QACxG,uGAAuG;QACvG,iFAAiF;QACjF,KAAK,MAAM,KAAK,IAAI,qBAAqB,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC;YAChE,eAAe,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAChE,CAAC;IACF,CAAC,CAAC;IAEF,2BAA2B;IAC3B,sGAAsG;IACtG,oGAAoG;IACpG,+FAA+F;IAC/F,yFAAyF;IACzF,wGAAwG;IACxG,qGAAqG;IACrG,mGAAmG;IACnG,uGAAuG;IACvG,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,EAAE,eAAe,IAAI,4BAA4B,CAAC;QACxF,gBAAgB;QAChB,UAAU;QACV,eAAe,EAAE,OAAO,CAAC,0BAA0B;KACnD,CAAC,CAAC;IACH,wGAAwG;IACxG,2FAA2F;IAC3F,wGAAwG;IACxG,yGAAyG;IACzG,8FAA8F;IAC9F,yCAAyC;IACzC,MAAM,yBAAyB,GAC9B,OAAO,CAAC,OAAO,EAAE,eAAe,KAAK,SAAS,IAAI,OAAO,CAAC,0BAA0B,KAAK,SAAS,CAAC;IACpG,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,eAAe,EAAE,yBAAyB,CAAC,CAAC;IAEhI,sGAAsG;IACtG,sGAAsG;IACtG,qGAAqG;IACrG,+EAA+E;IAC/E,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAEpE,MAAM,GAAG,GAAuB;QAC/B,IAAI;QACJ,UAAU;QACV,KAAK;QACL,SAAS;QACT,SAAS,EAAE,eAAe;QAC1B,OAAO;QACP,eAAe;QACf,KAAK;QACL,OAAO;QACP,QAAQ;QACR,sBAAsB;QACtB,WAAW;QACX,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,MAAM;QACN,OAAO,EAAE;YACR,WAAW,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW;YACzC,WAAW,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW;YACzC,WAAW,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW;SACzC;QACD,iBAAiB;QACjB,eAAe,EAAE,OAAO,CAAC,SAAS;QAClC,QAAQ;QACR,YAAY;QACZ,iBAAiB;QACjB,oBAAoB;QACpB,UAAU;QACV,YAAY;QACZ,eAAe;QACf,8FAA8F;QAC9F,kGAAkG;QAClG,mFAAmF;QACnF,EAAE;QACF,qGAAqG;QACrG,wGAAwG;QACxG,sGAAsG;QACtG,wGAAwG;QACxG,gGAAgG;QAChG,qGAAqG;QACrG,qGAAqG;QACrG,iGAAiG;QACjG,sGAAsG;QACtG,kGAAkG;QAClG,2EAA2E;QAC3E,eAAe,EAAE,CAAC,IAAsB,EAAQ,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;KACvE,CAAC;IACF,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAE5E,6GAA6G;IAC7G,sGAAsG;IACtG,4GAA4G;IAC5G,uGAAuG;IACvG,wGAAwG;IACxG,0GAA0G;IAC1G,4GAA4G;IAC5G,kEAAkE;IAClE,EAAE;IACF,2GAA2G;IAC3G,4GAA4G;IAC5G,0GAA0G;IAC1G,6GAA6G;IAC7G,mEAAmE;IACnE,EAAE;IACF,0GAA0G;IAC1G,wGAAwG;IACxG,yGAAyG;IACzG,kFAAkF;IAClF,EAAE;IACF,8FAA8F;IAC9F,qGAAqG;IACrG,0GAA0G;IAC1G,wGAAwG;IACxG,MAAM,2BAA2B,GAAG,CAAC,KAAiB,EAAQ,EAAE;QAC/D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,CAAC,wEAAwE;QACjF,CAAC;QACD,IAAI,CAAiB,CAAC;QACtB,IAAI,CAAC;YACJ,CAAC,GAAG,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACR,OAAO,CAAC,+CAA+C;QACxD,CAAC;QACD,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,+EAA+E;QACxF,CAAC;QACD,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACrC,8FAA8F;QAC9F,qGAAqG;QACrG,sGAAsG;QACtG,+FAA+F;QAC/F,+FAA+F;QAC/F,IAAI,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,SAAS,EAAE,CAAC;YAC/C,OAAO,CAAC,sDAAsD;QAC/D,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,mEAAmE;QAC5E,CAAC;QACD,mGAAmG;QACnG,uGAAuG;QACvG,IAAI,CAAC;YACJ,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,GAAG,YAAY,4BAA4B,EAAE,CAAC;gBACjD,OAAO,CAAC,yFAAyF;YAClG,CAAC;YACD,MAAM,GAAG,CAAC;QACX,CAAC;IACF,CAAC,CAAC;IAEF,mEAAmE;IACnE,qGAAqG;IACrG,wGAAwG;IACxG,2FAA2F;IAC3F,MAAM,WAAW,GAAG,CAAC,OAAsB,EAAE,WAAmB,EAAwB,EAAE,CACzF,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE;QACvC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,eAAe;QAC3B,mBAAmB,EAAE,CAAC,KAAgB,EAAY,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACzG,YAAY,EAAE,CAAC,KAAgB,EAAc,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,WAAW;QAC/E,kGAAkG;QAClG,kGAAkG;QAClG,oBAAoB,EAAE,CAAC,KAAgB,EAAE,KAAiB,EAAiC,EAAE,CAC5F,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC;QACrD,oGAAoG;QACpG,gGAAgG;QAChG,4FAA4F;QAC5F,oGAAoG;QACpG,wBAAwB,EAAE,CAAC,KAAgB,EAAmE,EAAE;YAC/G,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YACjC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,sBAAsB,CAAC;gBACpE,KAAK;gBACL,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,YAAY,EAAE,CAAC;aACf,CAAC,CAAC;YACH,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;QAC9C,CAAC;QACD,mGAAmG;QACnG,0FAA0F;QAC1F,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,GAAW,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;KAC9C,CAAC,CAAC;IAEJ,oDAAoD;IACpD,mGAAmG;IACnG,mGAAmG;IACnG,MAAM,gBAAgB,GAAG,uBAAuB,EAAE,CAAC;IACnD,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;QAClD,SAAS,EAAE,eAAe;QAC1B,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,GAAe,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,WAAW;QACjE,kGAAkG;QAClG,sGAAsG;QACtG,aAAa,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAW,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,SAAS,CAAC;KAClG,CAAC,CAAC;IACH,MAAM,UAAU,GAAsB,gBAAgB,CAAC;IACvD,MAAM,gBAAgB,GAAG,4BAA4B,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IACnG,uEAAuE;IACvE,yGAAyG;IACzG,wGAAwG;IACxG,sGAAsG;IACtG,kGAAkG;IAClG,2GAA2G;IAC3G,6FAA6F;IAC7F,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;IACrF,MAAM,QAAQ,GAAG,wBAAwB,CAAC;QACzC,MAAM,EAAE,eAAe;QACvB,MAAM,EAAE,gBAAgB;QACxB,OAAO;QACP,MAAM,EAAE,WAAW;QACnB,qGAAqG;QACrG,UAAU,EAAE,OAAO,CAAC,iBAAiB,IAAI,EAAE;KAC3C,CAAC,CAAC;IACH,+DAA+D;IAC/D,wGAAwG;IACxG,uGAAuG;IACvG,sGAAsG;IACtG,oFAAoF;IACpF,qGAAqG;IACrG,qGAAqG;IACrG,MAAM,sBAAsB,GAAG,8BAA8B,CAAC;QAC7D,IAAI;QACJ,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,iBAAiB;KACxC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,wBAAwB,CAAC;QACxC,uFAAuF;QACvF,mGAAmG;QACnG,IAAI,EAAE,eAAe;QACrB,IAAI;QACJ,MAAM;QACN,aAAa;QACb,MAAM,EAAE,iBAAiB;QACzB,SAAS,EAAE,oBAAoB;QAC/B,QAAQ;QACR,sBAAsB;QACtB,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE;KAC7D,CAAC,CAAC;IAEH,kGAAkG;IAClG,MAAM,gBAAgB,GAAG,KAAK,EAAE,GAAe,EAAE,UAAyC,EAAE,GAAW,EAA4B,EAAE;QACpI,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,gBAAgB,GAAG,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC7D,iGAAiG;QACjG,mGAAmG;QACnG,gDAAgD;QAChD,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAC9E,IAAI,WAAwB,CAAC;QAC7B,IAAI,CAAC;YACJ,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAC9E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,GAAG,YAAY,4BAA4B,EAAE,CAAC;gBACjD,4FAA4F;gBAC5F,iGAAiG;gBACjG,4EAA4E;gBAC5E,GAAG,CAAC,6DAA6D,CAAC,CAAC;gBACnE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC;YACzH,CAAC;YACD,MAAM,GAAG,CAAC;QACX,CAAC;QACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC9B,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QACxD,CAAC;QACD,yFAAyF;QACzF,MAAM,WAAW,GAAG,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjH,kGAAkG;QAClG,kGAAkG;QAClG,qGAAqG;QACrG,+FAA+F;QAC/F,+FAA+F;QAC/F,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC;QACvC,OAAO,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;IACvG,CAAC,CAAC;IAEF,4EAA4E;IAC5E,wGAAwG;IACxG,0GAA0G;IAC1G,yGAAyG;IACzG,wEAAwE;IACxE,MAAM,kBAAkB,GAAG,OAAO,CAAC,UAAU,KAAK,SAAS;QAC1D,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,KAAK,EAAE,IAAiB,EAAE,EAAU,EAAoB,EAAE;YAC3D,kGAAkG;YAClG,yBAAyB;YACzB,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACpC,OAAO,KAAK,CAAC;YACd,CAAC;YACD,IAAI,OAAqB,CAAC;YAC1B,IAAI,GAAe,CAAC;YACpB,IAAI,CAAC;gBACJ,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBAC1C,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACR,OAAO,KAAK,CAAC,CAAC,2DAA2D;YAC1E,CAAC;YACD,qGAAqG;YACrG,mGAAmG;YACnG,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAC1C,OAAO,EACP,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,EACpC,IAAI,CAAC,SAAS,EACd,uBAAuB,CAAC,IAAI,CAAC,EAC7B,GAAG,EACH,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,GAAG,EAAE,EAAE,EAAE,CAClE,CAAC;YACF,OAAO,MAAM,KAAK,UAAU,CAAC;QAC9B,CAAC,CAAC;IACH,MAAM,aAAa,GAA0B;QAC5C,KAAK,EAAE,CAAC,IAAY,EAAE,EAAc,EAAE,OAAmB,EAAa,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC;QAC5G,aAAa,EAAE,CAAC,iBAA4B,EAAE,UAAkB,EAAE,qBAAiC,EAAe,EAAE,CACnH,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,EAAE,UAAU,EAAE,qBAAqB,CAAC;QACxE,kBAAkB;KAClB,CAAC;IAEF,gDAAgD;IAChD,kGAAkG;IAClG,wGAAwG;IACxG,MAAM,4BAA4B,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,2BAA2B,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC9O,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAgB,EAAE,MAAgB,EAA0C,EAAE;QAC5G,MAAM,OAAO,GAAG,mBAAmB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;QACvE,uGAAuG;QACvG,oGAAoG;QACpG,+FAA+F;QAC/F,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,IAAI,KAAK,SAAS;YAC/B,CAAC,CAAC,MAAM,iBAAiB,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;YAC1D,CAAC,CAAC,MAAM,gBAAgB,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3E,OAAO,EAAE,iBAAiB,EAAE,aAAa,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC;IACnF,CAAC,CAAC,CAAC;IAEH,iDAAiD;IACjD,uGAAuG;IACvG,uGAAuG;IACvG,sGAAsG;IACtG,wGAAwG;IACxG,+DAA+D;IAC/D,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,MAAM,SAAS,GAAG,KAAK,IAAmB,EAAE;QAC3C,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;YACxB,OAAO;QACR,CAAC;QACD,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC;gBACrC,IAAI,OAAO,EAAE,CAAC;oBACb,MAAM;gBACP,CAAC;gBACD,IAAI,CAAC;oBACJ,MAAM,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;oBACjC,MAAM,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;gBAChC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACd,GAAG,CAAC,yDAAyD,EAAE,GAAG,CAAC,CAAC;gBACrE,CAAC;YACF,CAAC;YACD,kGAAkG;YAClG,oGAAoG;YACpG,oGAAoG;YACpG,kGAAkG;YAClG,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;gBAAS,CAAC;YACV,OAAO,GAAG,KAAK,CAAC;QACjB,CAAC;IACF,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,WAAW,CAAC,GAAS,EAAE;QACpC,KAAK,SAAS,EAAE,CAAC;IAClB,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACrB,wGAAwG;IACvG,KAAgC,CAAC,KAAK,EAAE,EAAE,CAAC;IAE5C,OAAO;QACN,OAAO;QACP,QAAQ;QACR,SAAS;QACT,OAAO;QACP,eAAe;QACf,WAAW;QACX,gBAAgB;QAChB,IAAI,EAAE,KAAK,IAAmB,EAAE;YAC/B,OAAO,GAAG,IAAI,CAAC;YACf,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjB,oBAAoB,CAAC,KAAK,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC;QACzD,CAAC;KACD,CAAC;AACH,CAAC;AAED,mCAAmC;AAEnC;;;;;GAKG;AACH,SAAS,uBAAuB,CAC/B,UAAkC,EAClC,GAAoD;IAEpD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,MAAM,QAAQ,GAAG,GAAS,EAAE;YAC3B,IAAI,MAAM,EAAE,CAAC;gBACZ,OAAO;YACR,CAAC;YACD,MAAM,GAAG,IAAI,CAAC;YACd,GAAG,CAAC,gKAAgK,CAAC,CAAC;QACvK,CAAC,CAAC;QACF,OAAO;YACN,YAAY,EAAE,GAAoB,EAAE;gBACnC,QAAQ,EAAE,CAAC;gBACX,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC5B,CAAC;YACD,SAAS,EAAE,GAAoB,EAAE;gBAChC,QAAQ,EAAE,CAAC;gBACX,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC5B,CAAC;SACD,CAAC;IACH,CAAC;IACD,OAAO;QACN,YAAY,EAAE,KAAK,EAAE,IAAI,EAAmB,EAAE,CAAC,aAAa,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;QACtH,SAAS,EAAE,KAAK,EAAE,IAAI,EAAmB,EAAE,CAAC,aAAa,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;KAChH,CAAC;AACH,CAAC;AAED,iEAAiE;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,SAAS,6BAA6B,CACrC,OAA8C,EAC9C,IAAc,EACd,GAAoD,EACpD,eAAyC,EACzC,yBAAkC;IAElC,MAAM,SAAS,GAAG,OAAO,EAAE,iBAAiB,CAAC;IAC7C,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,CAAC;IAEvC,qGAAqG;IACrG,mGAAmG;IACnG,8FAA8F;IAC9F,mEAAmE;IACnE,MAAM,UAAU,GAAG,SAAS,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,CAAC;IACvE,yGAAyG;IACzG,oGAAoG;IACpG,MAAM,YAAY,GAAG,SAAS,EAAE,MAAM,EAAE,YAAY,IAAI,uBAAuB,CAAC;IAEhF,sGAAsG;IACtG,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC9E,mGAAmG;IACnG,MAAM,cAAc,GAAG,UAAU,KAAK,SAAS;QAC9C,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,qBAAqB,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC;IACnG,0GAA0G;IAC1G,mGAAmG;IACnG,MAAM,mBAAmB,GAAG,6BAA6B,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC;IAE/E,MAAM,IAAI,GAAG,GAAY,EAAE,CAAC,KAAK,CAAC;IAElC,kGAAkG;IAClG,iGAAiG;IACjG,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,UAAU,GAAG,CAAC,IAAY,EAAkC,EAAE,CAAC,CAAC,GAAe,EAAW,EAAE;QACjG,KAAK,GAAG,CAAC;QACT,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,GAAG,IAAI,CAAC;YACd,GAAG,CAAC,8PAA8P,EAAE,IAAI,CAAC,CAAC;QAC3Q,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC,CAAC;IACF,yGAAyG;IACzG,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAkC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAExG,yGAAyG;IACzG,2GAA2G;IAC3G,0GAA0G;IAC1G,2GAA2G;IAC3G,4CAA4C;IAC5C,MAAM,cAAc,GAAG,UAAU,CAAC,gDAAgD,CAAC,CAAC;IACpF,MAAM,mBAAmB,GAAG,CAAC,GAAe,EAAW,EAAE;QACxD,IAAI,GAAG,CAAC,IAAI,IAAI,YAAY,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAC5D,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,OAAO,uBAAuB,CAAC;QAC9B,oGAAoG;QACpG,SAAS,EAAE,SAAS,EAAE,SAAS,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QACrF,gBAAgB,EAAE,SAAS,EAAE,gBAAgB,IAAI,cAAc,IAAI,QAAQ,CAAC,YAAY,CAAC;QACzF,wGAAwG;QACxG,uGAAuG;QACvG,oDAAoD;QACpD,qBAAqB,EAAE,SAAS,EAAE,qBAAqB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAC5H,MAAM,EAAE,SAAS,EAAE,MAAM;KACzB,CAAC,CAAC;AACJ,CAAC;AA0BD;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,2BAA2B,CAAC,GAAuB,EAAE,IAAmB;IACtF,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;IAChC,MAAM,KAAK,GAAgB;QAC1B,CAAC,EAAE,CAAC;QACJ,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;QACpC,gBAAgB,EAAE,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC;QACtD,qBAAqB,EAAE,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAC3D,SAAS;QACT,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACjC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;QACvB,YAAY,EAAE,EAAE;QAChB,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;KAC9C,CAAC;IACF,2GAA2G;IAC3G,0GAA0G;IAC1G,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;QACzG,KAAK,CAAC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;QACjD,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACxJ,MAAM,KAAK,GAAG,wBAAwB,CAAC,mBAAmB,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtF,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,6CAA6C,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvH,CAAC;AACF,CAAC;AAED,uGAAuG;AACvG,SAAS,SAAS,CAAC,IAAY;IAC9B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACzC,OAAO,CAAC,CAAC;IACV,CAAC;IACD,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5B,CAAC;AAED,kCAAkC;AAElC;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,OAAO,4BAA6B,SAAQ,KAAK;IACtD,YAAY,UAAkB;QAC7B,KAAK,CAAC,gDAAgD,UAAU,oCAAoC,CAAC,CAAC;QACtG,IAAI,CAAC,IAAI,GAAG,8BAA8B,CAAC;IAC5C,CAAC;CACD;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,mBAAmB,CAAC,GAAuB,EAAE,aAAqB,yBAAyB;IACnG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,UAAU,CAAC,mDAAmD,UAAU,EAAE,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC/C,uGAAuG;IACvG,0FAA0F;IAC1F,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,MAAM,KAAK,GAAG,CAAC,GAAW,EAAQ,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAElE,wGAAwG;IACxG,6FAA6F;IAC7F,MAAM,MAAM,GAAG,CAAC,MAAmB,EAAW,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;IAE/F,sGAAsG;IACtG,wGAAwG;IACxG,EAAE;IACF,0GAA0G;IAC1G,qGAAqG;IACrG,0GAA0G;IAC1G,sGAAsG;IACtG,0GAA0G;IAC1G,gEAAgE;IAChE,MAAM,YAAY,GAAG,GAAY,EAAE;QAClC,IAAI,SAA6B,CAAC;QAClC,IAAI,SAAS,GAAG,QAAQ,CAAC;QACzB,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACrB,SAAS,CAAC,yEAAyE;YACpF,CAAC;YACD,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC;gBACnB,SAAS,GAAG,CAAC,CAAC;gBACd,SAAS,GAAG,GAAG,CAAC;YACjB,CAAC;QACF,CAAC;QACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAO,KAAK,CAAC;QACd,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,KAAK,EAAE,CAAC;QAChC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACb,CAAC,CAAC;IAEF,OAAO;QACN,QAAQ,CAAC,KAAgB,EAAE,QAAgB,EAAE,gBAA4B;YACxE,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;YACjC,gGAAgG;YAChG,6DAA6D;YAC7D,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC9B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,IAAI,OAAO,CAAC,IAAI,IAAI,UAAU,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;oBACnD,2FAA2F;oBAC3F,gFAAgF;oBAChF,GAAG,CAAC,2EAA2E,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;oBAClG,MAAM,IAAI,4BAA4B,CAAC,UAAU,CAAC,CAAC;gBACpD,CAAC;gBACD,MAAM,GAAG,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;gBACnE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,KAAK,CAAC,GAAG,CAAC,CAAC;YACX,OAAO,MAAM,CAAC;QACf,CAAC;QACD,WAAW,CAAC,KAAgB;YAC3B,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,KAAK,CAAC,GAAG,CAAC,CAAC;YACZ,CAAC;YACD,OAAO,MAAM,CAAC;QACf,CAAC;QACD,UAAU,CAAC,OAAmB,EAAE,aAAyB;YACxD,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACrC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE,CAAC;oBAC1C,KAAK,CAAC,GAAG,CAAC,CAAC;oBACX,OAAO,MAAM,CAAC;gBACf,CAAC;YACF,CAAC;YACD,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,WAAW,CAAC,OAAmB,EAAE,QAAgB;YAChD,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACrC,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;oBACjE,KAAK,CAAC,GAAG,CAAC,CAAC;oBACX,OAAO,MAAM,CAAC;gBACf,CAAC;YACF,CAAC;YACD,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,GAAG;YACF,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9B,CAAC;QACD,KAAK;YACJ,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;gBACvC,MAAM,CAAC,KAAK,EAAE,CAAC;YAChB,CAAC;YACD,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;KACD,CAAC;AACH,CAAC;AAcD;;;;;;;;;;;;;;GAcG;AACH,MAAM,aAAa;IACV,OAAO,CAA6B;IACpC,KAAK,CAA6B;IAClC,aAAa,CAA6B;IAElD;;;;OAIG;IACH,OAAO,CAAC,QAAgB,EAAE,KAA2B;QACpD,IAAI,IAAI,CAAC,OAAO,EAAE,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACzC,OAAO;QACR,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,uGAAuG;IACvG,eAAe,CAAC,QAAwB;QACvC,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;IAC/B,CAAC;IAED,mGAAmG;IACnG,WAAW;QACV,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;IAED,+FAA+F;IAC/F,SAAS,CAAC,QAAgB;QACzB,IAAI,IAAI,CAAC,OAAO,EAAE,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;QAChC,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAC9B,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC;CACD;AAkCD,SAAS,mBAAmB;IAC3B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmC,CAAC;IAC3D,6GAA6G;IAC7G,4GAA4G;IAC5G,iHAAiH;IACjH,MAAM,KAAK,GAAG,CAAC,OAAmB,EAAE,gBAA4B,EAAE,WAAmB,EAAE,MAAe,EAAW,EAAE;QAClH,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5B,QAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACjC,CAAC;QACD,MAAM,QAAQ,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5B,qGAAqG;YACrG,qEAAqE;YACrE,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,CAAC,CAAC;YACjE,OAAO,IAAI,CAAC;QACb,CAAC;QACD,IAAI,WAAW,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;YAC7C,OAAO,KAAK,CAAC;QACd,CAAC;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,KAAK,MAAM,CAAC;QAC3C,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;QACzB,QAAQ,CAAC,eAAe,GAAG,WAAW,CAAC;QACvC,OAAO,OAAO,CAAC;IAChB,CAAC,CAAC;IACF,OAAO;QACN,WAAW,CAAC,OAAmB,EAAE,gBAA4B,EAAE,WAAmB;YACjF,OAAO,KAAK,CAAC,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QAC5D,CAAC;QACD,aAAa,CAAC,OAAmB,EAAE,gBAA4B,EAAE,WAAmB;YACnF,OAAO,KAAK,CAAC,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC;QACD,KAAK,CAAC,OAAmB;YACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YACrD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC5B,OAAO,CAAC,CAAC;YACV,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;gBACvC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBAClB,CAAC,EAAE,CAAC;gBACL,CAAC;YACF,CAAC;YACD,OAAO,CAAC,CAAC;QACV,CAAC;KACD,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,iBAAiB,CAAC,GAAuB,EAAE,WAAsB,EAAE,QAAgB,EAAE,gBAA4B;IACzH,MAAM,KAAK,GAAG,uBAAuB,EAAE,CAAC;IACxC,uGAAuG;IACvG,iGAAiG;IACjG,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;IAC5C,qGAAqG;IACrG,mGAAmG;IACnG,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,CAAC,IAAiE,EAAkB,EAAE;QACxG,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QACtC,OAAO;YACN,KAAK,EAAE,IAAI,CAAC,WAAW;YACvB,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;YACzC,WAAW;YACX,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,mBAAmB,CAAC;SAChD,CAAC;IACH,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,GAAuB,EAAE;QACvC,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAC3C,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/E,OAAO,IAAI,CAAC;IACb,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,GAAe,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC;IAE1D,uGAAuG;IACvG,sGAAsG;IACtG,MAAM,GAAG,GAAG,qBAAqB,CAAC;QACjC,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,KAAK;QACL,KAAK,EAAE,WAAW;QAClB,UAAU;QACV,aAAa,EAAE,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAW,EAAE,CAAC,GAAG,CAAC,YAAa,CAAC,CAAC,EAAE,WAAW,CAAC;QAC7G,gGAAgG;QAChG,mGAAmG;QACnG,uGAAuG;QACvG,sGAAsG;QACtG,uGAAuG;QACvG,gBAAgB,EAAE,CAAC,QAAQ,EAAQ,EAAE;YACpC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAChC,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;YAC/D,CAAC;QACF,CAAC;QACD,yGAAyG;QACzG,0GAA0G;QAC1G,0GAA0G;QAC1G,yGAAyG;QACzG,+FAA+F;QAC/F,aAAa,EAAE,CAAC,UAAqC,EAAE,YAAuC,EAAQ,EAAE;YACvG,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAC9B,aAAa,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;YAC7G,CAAC;YACD,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;gBAChC,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;YAC/G,CAAC;QACF,CAAC;KACD,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACxB,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAEtD,sGAAsG;IACtG,uGAAuG;IACvG,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IAEtC,uGAAuG;IACvG,qGAAqG;IACrG,oGAAoG;IACpG,gGAAgG;IAChG,oEAAoE;IACpE,MAAM,eAAe,GAAG,CAAC,IAAc,EAAgB,EAAE;QACxD,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,OAAO,kBAAkB,CAAC,+BAA+B,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,yBAAyB,CAAC;YAC5C,IAAI;YACJ,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,UAAU,EAAE,GAAG,CAAC,eAAe;YAC/B,KAAK,EAAE,GAAc,EAAE,CAAC,WAAW;YACnC,WAAW,EAAE,UAAU;YACvB,aAAa,EAAE,GAAa,EAAE,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;YACxE,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACtB,CAAC,CAAC;QACH,OAAO,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,gBAAgB,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;IACvD,wGAAwG;IACxG,uGAAuG;IACvG,yGAAyG;IACzG,MAAM,eAAe,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAErD,qGAAqG;IACrG,oGAAoG;IACpG,MAAM,mBAAmB,GAA4B,6BAA6B,CAAC;QAClF,MAAM,EAAE,gBAAgB;QACxB,IAAI,EAAE,GAAG,CAAC,WAAW;QACrB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,eAAe,EAAE,GAAG,CAAC,QAAQ;KAC7B,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,CAAC,GAAW,EAAkB,EAAE;QAClD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,EAAE,CAAC;QAC1C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC;IACxE,CAAC,CAAC;IACF,iGAAiG;IACjG,4FAA4F;IAC5F,8FAA8F;IAC9F,0FAA0F;IAC1F,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC;IAEhD,gGAAgG;IAChG,kGAAkG;IAClG,uGAAuG;IACvG,eAAe;IACf,wGAAwG;IACxG,wGAAwG;IACxG,qGAAqG;IACrG,yGAAyG;IACzG,qGAAqG;IACrG,mCAAmC;IACnC,MAAM,YAAY,GAAG,CAAC,CAAiB,EAAE,CAAiB,EAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ,CAAC;IAElG;;;;;;;;OAQG;IACH,MAAM,eAAe,GAAG,KAAK,EAAE,QAAwB,EAAE,WAA2B,EAA4C,EAAE;QACjI,MAAM,OAAO,GAAG,4BAA4B,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,IAAI,yBAAyB,CAAC;YAC5C,IAAI,EAAE,UAAU;YAChB,UAAU,EAAE,GAAG,CAAC,UAAW,EAAE,6EAA6E;YAC1G,UAAU,EAAE,GAAG,CAAC,eAAe;YAC/B,KAAK,EAAE,GAAc,EAAE,CAAC,WAAW;YACnC,WAAW,EAAE,GAAe,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,wDAAwD;YAC1G,aAAa,EAAE,GAAa,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,UAAU,CAAC,EAAE,2BAA2B;YACvF,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,YAAY,EAAE,GAAY,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;SACrE,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC;YACJ,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YACtE,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC;QAC9F,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,GAAG,CAAC,6FAA6F,EAAE,aAAa,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC;YACpI,OAAO,SAAS,CAAC;QAClB,CAAC;IACF,CAAC,CAAC;IAEF;;;;;;;;OAQG;IACH,MAAM,iBAAiB,GAAG,KAAK,EAAE,GAAW,EAAE,OAAgB,EAAyC,EAAE;QACxG,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,6DAA6D;QAC/F,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,WAAW,KAAK,SAAS,IAAI,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACjF,IAAI,SAAuC,CAAC;QAC5C,IAAI,QAAQ,EAAE,CAAC;YACd,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,WAAY,CAAC,CAAC;YAC/D,SAAS,GAAG,MAAM,mBAAmB,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACP,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;QACzH,CAAC;QACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC7B,aAAa,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YACvC,GAAG,CAAC,eAAe,EAAE,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,sBAAsB,CAAC;QAC1C,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,IAAI;QACJ,UAAU;QACV,iBAAiB,EAAE,CAAC,IAAU,EAAU,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC;QAC/F,MAAM,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,KAAK,EAAE;KACjC,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,qBAAqB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,OAAmB,EAAU,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpJ,MAAM,SAAS,GAAG,wBAAwB,CAAC;QAC1C,KAAK;QACL,UAAU,EAAE,CAAC,OAAmB,EAAU,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9F,sGAAsG;QACtG,yGAAyG;QACzG,oGAAoG;QACpG,qGAAqG;QACrG,qDAAqD;QACrD,gBAAgB,EAAE,CAAC,OAAmB,EAAU,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;QAC/E,QAAQ,EAAE,GAAW,EAAE,CAAC,QAAQ;QAChC,iGAAiG;QACjG,mGAAmG;QACnG,WAAW,EAAE,CAAC,OAAmB,EAAc,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC;QAC5H,kGAAkG;QAClG,wGAAwG;QACxG,WAAW,EAAE,GAAe,EAAE,CAAC,WAAW;QAC1C,WAAW,EAAE,UAAU;QACvB,MAAM,EAAE,YAAY;QACpB,iGAAiG;QACjG,2FAA2F;QAC3F,+FAA+F;QAC/F,MAAM,EAAE,GAAG,CAAC,eAAe,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE;KACxD,CAAC,CAAC;IACH,oGAAoG;IACpG,uGAAuG;IACvG,6FAA6F;IAC7F,uGAAuG;IACvG,kGAAkG;IAClG,oGAAoG;IACpG,qGAAqG;IACrG,iGAAiG;IACjG,2FAA2F;IAC3F,sGAAsG;IACtG,MAAM,SAAS,GAAG,sBAAsB,CAAC;QACxC,eAAe,EAAE;YAChB,kBAAkB,EAAE,CAAC,OAAmB,EAAE,WAAuB,EAAE,IAAY,EAAE,MAAe,EAAiB,EAAE,CAClH,2BAA2B,CAAC,GAAG,EAAE;gBAChC,OAAO;gBACP,WAAW;gBACX,QAAQ,EAAE,IAAI;gBACd,MAAM;gBACN,gBAAgB;gBAChB,kGAAkG;gBAClG,qCAAqC;gBACrC,gBAAgB,EAAE,WAAW;gBAC7B,WAAW,EAAE,UAAU;gBACvB,8FAA8F;gBAC9F,2EAA2E;gBAC3E,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;aACvD,CAAC;SACH;KACD,CAAC,CAAC;IAEH,sGAAsG;IACtG,6FAA6F;IAC7F,gEAAgE;IAChE,MAAM,WAAW,GAAG,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACvE,sGAAsG;IACtG,gGAAgG;IAChG,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC5E,MAAM,WAAW,GAAG,4BAA4B,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1E,sGAAsG;IACtG,uGAAuG;IACvG,uGAAuG;IACvG,uGAAuG;IACvG,oGAAoG;IACpG,6EAA6E;IAC7E,MAAM,WAAW,GAAG,iBAAiB,CAAC;QACrC,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW;QAC1B,OAAO,EAAE,CAAC,OAAmB,EAAQ,EAAE;YACtC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1B,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;KACD,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,uBAAuB,CAAC;QACvC,KAAK;QACL,IAAI,EAAE,GAAG,CAAC,eAAe;QACzB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,MAAM;QACN,MAAM,EAAE;YACP,iGAAiG;YACjG,+FAA+F;YAC/F,KAAK,EAAE,CAAC,GAAG,EAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;YACxC,+FAA+F;YAC/F,OAAO,EAAE,CAAC,GAAG,EAAQ,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;SAC5C;QACD,oBAAoB,EAAE,GAAG,CAAC,oBAAoB;QAC9C,mGAAmG;QACnG,sGAAsG;QACtG,gGAAgG;QAChG,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW;KAClC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,wBAAwB,CAAC;QACvC,IAAI,EAAE,GAAG,CAAC,eAAe;QACzB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK;QACL,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,WAAW;QACX,SAAS;QACT,SAAS;QACT,OAAO;QACP,OAAO;QACP,MAAM;QACN,aAAa,EAAE,CAAC,IAAU,EAAW,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;QAC1E,+FAA+F;QAC/F,WAAW;QACX,6EAA6E;QAC7E,gBAAgB;QAChB,WAAW;QACX,WAAW;QACX,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;QACxC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;QACxC,qGAAqG;QACrG,oGAAoG;QACpG,kDAAkD;QAClD,OAAO,EAAE,CAAC,GAAG,EAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;QAC1C,8FAA8F;QAC9F,8FAA8F;QAC9F,QAAQ,EAAE,CAAC,MAAM,EAAQ,EAAE,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;QACtE,GAAG;KACH,CAAC,CAAC;IAEH,2GAA2G;IAC3G,MAAM,cAAc,GAAG,GAAiB,EAAE;QACzC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;YACnC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,uGAAuG;IACvG,sGAAsG;IACtG,wGAAwG;IACxG,iGAAiG;IACjG,4DAA4D;IAC5D,wGAAwG;IACxG,0FAA0F;IAC1F,IAAI,YAAgC,CAAC;IAErC,oGAAoG;IACpG,uGAAuG;IACvG,yGAAyG;IACzG,+FAA+F;IAC/F,MAAM,WAAW,GAAG,KAAK,EAAE,GAAW,EAAuC,EAAE;QAC9E,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,cAAc,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACvD,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE;YAC5D,IAAI,EAAE,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC;YACrD,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC;YACvC,iGAAiG;YACjG,2FAA2F;YAC3F,qDAAqD;YACrD,gBAAgB,EAAE,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;SAC9C,CAAC,CACF,CAAC;QACF,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QACvE,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;eACpF,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,GAAG,GAAG,YAAY,IAAI,GAAG,CAAC,sBAAsB,CAAC,CAAC;QAC3G,MAAM,CAAC,GAAG,iBAAiB,CAAC;YAC3B,UAAU,EAAE,UAAU;YACtB,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC;YACjC,WAAW,EAAE,aAAa,CAAC,UAAU,EAAE,CAAC;YACxC,QAAQ;YACR,SAAS;YACT,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,aAAa,EAAE,8BAA8B;YAC7C,cAAc;YACd,OAAO;YACP,OAAO;YACP,UAAU;YACV,YAAY;YACZ,SAAS,EAAE,GAAG;SACd,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACrB,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,YAAY,GAAG,GAAG,CAAC;QACnB,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,CAAC,CAAC,SAAS,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,CAAC,CAAC;IACV,CAAC,CAAC;IAEF,uGAAuG;IACvG,oGAAoG;IACpG,0GAA0G;IAC1G,MAAM,YAAY,GAAG,KAAK,EAAE,GAAW,EAAiB,EAAE;QACzD,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,OAAO;QACR,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,EAAE,CAAC;YACxC,IAAI,MAAoC,CAAC;YACzC,IAAI,CAAC;gBACJ,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACpD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,GAAG,CAAC,+DAA+D,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;gBAClG,SAAS;YACV,CAAC;YACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,GAAG,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC5C,CAAC;QACF,CAAC;IACF,CAAC,CAAC;IAEF,OAAO;QACN,WAAW;QACX,QAAQ;QACR,MAAM;QACN,MAAM;QACN,gBAAgB,EAAE,CAAC,KAAiB,EAAiC,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACrH,QAAQ,EAAE,GAAY,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,MAAM,GAAG,CAAC;QACnD,aAAa,EAAE,GAAY,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE;QACvD,KAAK,EAAE,CAAC,OAAmB,EAAE,aAAyB,EAAW,EAAE,CAClE,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,SAAS;QAC7D,OAAO,EAAE,CAAC,OAAmB,EAAiC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC;QAC3F,YAAY,EAAE,CAAC,OAAmB,EAAkB,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;QAChF,kFAAkF;QAClF,+FAA+F;QAC/F,qGAAqG;QACrG,mGAAmG;QACnG,qGAAqG;QACrG,oGAAoG;QACpG,sGAAsG;QACtG,uGAAuG;QACvG,sGAAsG;QACtG,WAAW,EAAE,CAAC,OAAmB,EAAE,GAAW,EAAQ,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC;QAC1F,UAAU,EAAE,GAAe,EAAE,CAAC,IAAI;QAClC,WAAW,EAAE,CAAC,OAAmB,EAAW,EAAE,CAC7C,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,SAAS;QAC9E,cAAc,EAAE,CAAC,OAAmB,EAAW,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;QAC1E,sBAAsB,EAAE,CAAC,OAAmB,EAAsB,EAAE,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC;QAC1G,SAAS,EAAE,CAAC,OAAmB,EAAyB,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC;QACjF,uGAAuG;QACvG,0GAA0G;QAC1G,uGAAuG;QACvG,6DAA6D;QAC7D,WAAW,EAAE,CAAC,OAAmB,EAAE,gBAA4B,EAAE,WAAmB,EAAQ,EAAE;YAC7F,IAAI,aAAa,CAAC,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,WAAW,CAAC,EAAE,CAAC;gBACvE,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC;YAC3D,CAAC;QACF,CAAC;QACD,aAAa,EAAE,CAAC,OAAmB,EAAE,gBAA4B,EAAE,WAAmB,EAAQ,EAAE;YAC/F,IAAI,aAAa,CAAC,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,WAAW,CAAC,EAAE,CAAC;gBACzE,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC;YAC7D,CAAC;QACF,CAAC;QACD,gBAAgB,EAAE,CAAC,OAAmB,EAAU,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;QAC/E,UAAU,EAAE,CAAC,OAAmB,EAAW,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC;QAC3E,oBAAoB,EAAE,CAAC,MAAM,EAAE,GAAG,EAAQ,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,CAAC;QACxF,mBAAmB,EAAE,CAAC,MAAM,EAAE,GAAG,EAAQ,EAAE,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC;QACtF,YAAY,EAAE,CAAC,GAAW,EAAyC,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,KAAK,CAAC;QACnG,cAAc,EAAE,CAAC,GAAW,EAAyC,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC;QACpG,WAAW;QACX,YAAY;QACZ,KAAK,EAAE,GAAS,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE;KAC9B,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,QAAuB,EAAE,KAAc,EAAE,GAAW;IAChF,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC3D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC;IACjD,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC9C,CAAC;AAyBD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAiB,EAAE,IAA2B,EAAE,GAAW;IAClG,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,qBAAqB,GAAG,aAAa,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACxE,MAAM,gBAAgB,GAAG,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC9D,8GAA8G;IAC9G,gCAAgC;IAChC,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;IACnF,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,gBAAgB,CAAC,EAAE,CAAC;QACpD,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC/D,CAAC;IACD,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;IACzF,uGAAuG;IACvG,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAAC;QACpF,CAAC;IACF,CAAC;IACD,2GAA2G;IAC3G,sGAAsG;IACtG,2GAA2G;IAC3G,iCAAiC;IACjC,IAAI,MAAwC,CAAC;IAC7C,IAAI,CAAC;QACJ,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAC3F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,IAAI,GAAG,YAAY,4BAA4B,EAAE,CAAC;YACjD,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;QACvE,CAAC;QACD,MAAM,GAAG,CAAC;IACX,CAAC;IACD,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAChE,gBAAgB;IAChB,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AACnC,CAAC;AAuCD,+GAA+G;AAC/G,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAEzC,wGAAwG;AACxG,MAAM,kBAAkB,GAAkD;IACzE,UAAU,EAAE,kBAAkB;IAC9B,SAAS,EAAE,mBAAmB;IAC9B,QAAQ,EAAE,kBAAkB;IAC5B,SAAS,EAAE,aAAa;CACxB,CAAC;AAEF;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,UAAkB;IAC9C,IAAI,CAAC;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAY,CAAC;QAC3F,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,KAAc,EAAE,QAA2B;IAClE,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAsB,EAAE,WAAmB,EAAE,IAAyB;IAC7G,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACnC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACnE,CAAC;IACD,MAAM,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAErD,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACjC,oGAAoG;QACpG,iGAAiG;QACjG,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACnE,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,+CAA+C,EAAE,CAAC;QACzF,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,8BAA8B,EAAE,CAAC;QACxE,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,mCAAmC,EAAE,CAAC;QAC7E,CAAC;QACD,uGAAuG;QACvG,wGAAwG;QACxG,wGAAwG;QACxG,gGAAgG;QAChG,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,UAAU,EAAE,CAAC;YAC7E,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,kDAAkD,EAAE,CAAC;QAC5F,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAClF,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;IAC9F,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAAC;IACzE,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QACpC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACnE,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC/E,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC;IACjE,CAAC;IAED,2GAA2G;IAC3G,2GAA2G;IAC3G,iGAAiG;IACjG,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,2CAA2C,EAAE,CAAC;IACrF,CAAC;IACD,uGAAuG;IACvG,sGAAsG;IACtG,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;QAC9B,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,uCAAuC,WAAW,GAAG,EAAE,CAAC;IAC/F,CAAC;IACD,8GAA8G;IAC9G,yGAAyG;IACzG,4DAA4D;IAC5D,4GAA4G;IAC5G,4GAA4G;IAC5G,0EAA0E;IAC1E,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAChE,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACzF,IAAI,aAAa,KAAK,eAAe,EAAE,CAAC;QACvC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,kDAAkD,EAAE,CAAC;IAC5F,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QACnC,qGAAqG;QACrG,yGAAyG;QACzG,4EAA4E;QAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC,KAAK,CAAC,CAAC;QACxD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,6CAA6C,EAAE,CAAC;QACvF,CAAC;QACD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC;YACvC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,kDAAkD,EAAE,CAAC;QAC5F,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,4CAA4C,EAAE,CAAC;QACtF,CAAC;QACD,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACxE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,6CAA6C,EAAE,CAAC;QACvF,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,IAAI,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,0BAA0B,EAAE,CAAC;YACtF,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,oCAAoC,EAAE,CAAC;QAC9E,CAAC;IACF,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAClF,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;AAC9F,CAAC;AAyDD;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAE/C,8FAA8F;AAC9F,MAAM,UAAU,iBAAiB,CAAC,iBAA6C;IAC9E,OAAO,EAAE,WAAW,EAAE,yBAAyB,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,IAAI,MAAM,CAAiB,0BAA0B,CAAC,EAAE,CAAC;AACzI,CAAC;AAeD;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAiB,EAAE,QAAiB;IACvE,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC;IACxE,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACjD,CAAC;IACD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC;IACtE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAC/C,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACzC,OAAsB,EACtB,MAAqC,EACrC,QAA4B,EAC5B,GAAW;IAEX,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,IAAI,OAAqB,CAAC;IAC1B,IAAI,GAAe,CAAC;IACpB,IAAI,CAAC;QACJ,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACpD,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,WAAW,CAAC,CAAC,2DAA2D;IAChF,CAAC;IACD,yGAAyG;IACzG,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,6BAA6B,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,GAAG,EAAE,CAAC,CAAC;QAChL,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YAC3B,OAAO,WAAW,CAAC;QACpB,CAAC;QACD,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjD,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,MAAM,OAAO,GAAG,4BAA4B,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5K,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC3B,OAAO,WAAW,CAAC;IACpB,CAAC;IACD,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChD,OAAO,SAAS,CAAC;AAClB,CAAC;AAKD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAChD,MAAwB,EACxB,QAAuB,EACvB,QAA4B,EAC5B,GAAW;IAEX,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC7E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,WAAW,CAAC;IACpB,CAAC;IACD,IAAI,OAAqB,CAAC;IAC1B,IAAI,GAAe,CAAC;IACpB,IAAI,CAAC;QACJ,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5C,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,WAAW,CAAC,CAAC,2DAA2D;IAChF,CAAC;IACD,0GAA0G;IAC1G,8GAA8G;IAC9G,MAAM,OAAO,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,GAAG,EAAE,CAAC,CAAC;IACnL,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC3B,OAAO,WAAW,CAAC;IACpB,CAAC;IACD,2FAA2F;IAC3F,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAC3G,OAAO,UAAU,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACxC,KAAiB,EACjB,IAAgB,EAChB,QAAuB,EACvB,QAA4B,EAC5B,IAAiB,EACjB,GAAW,EACX,QAAiB;IAEjB,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC3B,GAAG,CAAC,8CAA8C,CAAC,CAAC;QACpD,OAAO,aAAa,CAAC;IACtB,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAC1F,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEtD,yEAAyE;IACzE,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;QAC7D,GAAG,CAAC,sDAAsD,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACxG,OAAO,cAAc,CAAC;IACvB,CAAC;IAED,uGAAuG;IACvG,0GAA0G;IAC1G,2GAA2G;IAC3G,6GAA6G;IAC7G,0GAA0G;IAC1G,yGAAyG;IACzG,qBAAqB;IACrB,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC/E,IAAI,cAAmC,CAAC;IACxC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1B,cAAc,GAAG,SAAS,CAAC;IAC5B,CAAC;SAAM,CAAC;QACP,2GAA2G;QAC3G,wGAAwG;QACxG,0GAA0G;QAC1G,wCAAwC;QACxC,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,KAAK,EAAE,CAAC;YAChE,GAAG,CAAC,iFAAiF,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACtK,cAAc,GAAG,OAAO,CAAC;QAC1B,CAAC;aAAM,CAAC;YACP,cAAc,GAAG,MAAM,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;YAC5E,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBAClC,sGAAsG;gBACtG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACP,GAAG,CAAC,4CAA4C,EAAE,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC/G,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,cAAc,CAAC;IACvB,CAAC;IAED,4GAA4G;IAC5G,0GAA0G;IAC1G,2GAA2G;IAC3G,4GAA4G;IAC5G,yGAAyG;IACzG,6GAA6G;IAC7G,4GAA4G;IAC5G,wCAAwC;IACxC,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC1F,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC,CAAC,gFAAgF;IACnG,CAAC;IACD,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC3B,OAAO,UAAU,CAAC;IACnB,CAAC;IACD,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAC5B,GAAG,CAAC,mEAAmE,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACvG,OAAO,WAAW,CAAC;IACpB,CAAC;IACD,OAAO,cAAc,CAAC;AACvB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAA4C,EAAE,WAAsB;IACzG,IAAI,mBAAmB,IAAI,MAAM,EAAE,CAAC;QACnC,OAAO,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,CAAC,WAAW,CAAC,CAAC;AACtB,CAAC;AAED,kBAAkB;AAElB;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,IAAiB,EAAE,KAAa,EAAE,WAAsB,EAAE,UAA6B;IAChH,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAC1D,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC;QAC3C,GAAG,CACF,wGAAwG,EACxG,aAAa,CAAC,WAAW,CAAC,EAC1B,UAAU,EACV,SAAS,CACT,CAAC;IACH,CAAC;AACF,CAAC;AAED,iGAAiG;AACjG,SAAS,eAAe,CAAC,CAAoB,EAAE,CAAoB;IAClE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,sEAAsE;AACtE,SAAS,aAAa,CAAC,CAAoB,EAAE,CAAoB;IAChE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IACxB,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,oGAAoG;AACpG,SAAS,kBAAkB,CAAC,KAAiD,EAAE,IAAgB,EAAE,IAAU;IAC1G,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QACnC,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7E,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QACtC,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC;AAClB,CAAC;AAED,sEAAsE;AACtE,SAAS,WAAW,CAAC,KAAiD,EAAE,OAAmB;IAC1F,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACxC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAS,CAAC;AACtD,CAAC;AAED,KAAK,UAAU,4BAA4B,CAC1C,IAAY,EACZ,SAA+B,EAC/B,QAAuB,EACvB,gBAAuH;AACvH,6GAA6G;AAC7G,aAAoC,EACpC,OAAe,EACf,WAAkF,EAClF,QAA4B,EAC5B,WAAwB,EACxB,eAA0C;AAC1C,4GAA4G;AAC5G,2BAAwD,EACxD,WAAsC,EACtC,gBAAsC,EACtC,SAAoB,EACpB,QAAgB;IAEhB,MAAM,OAAO,CAAC,GAAG,CAAC;QACjB,wGAAwG;QACxG,0GAA0G;QAC1G,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAuB,EAAE;YACzG,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACrD,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;YAC1D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,mBAAmB,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;YACjF,CAAC;YACD,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YACtE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO,mBAAmB,CAAC,MAAM,iBAAiB,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;YAChG,CAAC;YACD,MAAM,GAAG,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACxC,+EAA+E;YAC/E,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACjE,OAAO,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC7C,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,+FAA+F;QAC/F,kGAAkG;QAClG,mGAAmG;QACnG,wGAAwG;QACxG,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAiB,EAAE;YACtG,2BAA2B,CAAC,KAAK,CAAC,CAAC;YACnC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;QACjD,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,oGAAoG;QACpG,mGAAmG;QACnG,2FAA2F;QAC3F,gGAAgG;QAChG,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAiB,EAAE;YACvG,MAAM,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC9G,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,6FAA6F;QAC7F,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,UAAU,EAAE,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAuB,EAAE;YAC3G,KAAK,KAAK,CAAC,CAAC,uEAAuE;YACnF,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YACpC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,gBAAgB,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,MAAM,IAAI,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,+FAA+F;QAC/F,mGAAmG;QACnG,gGAAgG;QAChG,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAuB,EAAE;YAC3G,MAAM,OAAO,GAAG,qBAAqB,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC5E,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1D,OAAO,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC7C,CAAC,EAAE,QAAQ,CAAC,CAAC;KACb,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,kBAAkB,CAC1B,MAAgE,EAChE,QAAgB;IAEhB,OAAO,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAC3C,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CACzB,MAA0D,EAC1D,QAAgB;IAEhB,OAAO,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAsB,EAAE;QACjE,MAAM,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC1B,OAAO,SAAS,CAAC;IAClB,CAAC,EAAE,QAAQ,CAAC,CAAC;AACd,CAAC;AAED,mGAAmG;AACnG,SAAS,gBAAgB,CACxB,MAA4E,EAC5E,QAAgB;IAEhB,OAAO,CAAC,MAAc,EAAE,UAAsB,EAAQ,EAAE;QACvD,KAAK,CAAC,KAAK,IAAmB,EAAE;YAC/B,IAAI,CAAC;gBACJ,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACjD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;gBACzD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACzB,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC3B,CAAC;gBACD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACtB,CAAC;YAAC,MAAM,CAAC;gBACR,IAAI,CAAC;oBACJ,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;gBACvD,CAAC;gBAAC,MAAM,CAAC;oBACR,qBAAqB;gBACtB,CAAC;YACF,CAAC;QACF,CAAC,CAAC,EAAE,CAAC;IACN,CAAC,CAAC;AACH,CAAC;AAED,kGAAkG;AAClG,SAAS,WAAW,CAAI,EAAW;IAClC,IAAI,CAAC;QACJ,OAAO,EAAE,EAAE,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC"}
|
|
@@ -14,11 +14,12 @@
|
|
|
14
14
|
* exactly one bounded frame per stream and then closes; if a caller ever writes repeatedly on one
|
|
15
15
|
* stream, honor the flag by awaiting the stream's `'drain'` event the way FRET's `rpcRequest` does.
|
|
16
16
|
*
|
|
17
|
-
* {@link
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* which
|
|
21
|
-
*
|
|
17
|
+
* NOTE: accepted tradeoff — both calls to {@link openProtocolStream} below deliberately omit
|
|
18
|
+
* `negotiateFully`, taking libp2p's default of full multistream-select negotiation at stream-open.
|
|
19
|
+
* FRET's `openRpcStream` and `libp2p-key-network.ts#connect` both pass `negotiateFully: false`,
|
|
20
|
+
* which saves a round trip but defers an unsupported-protocol failure from stream-open to the
|
|
21
|
+
* first read — that would turn {@link sendOneWay} against a peer lacking the protocol into a
|
|
22
|
+
* silent no-op. Revisit if stream-open latency shows up in a profile.
|
|
22
23
|
*/
|
|
23
24
|
import type { Libp2p } from "libp2p";
|
|
24
25
|
import type { PeerId } from "@libp2p/interface";
|
|
@@ -31,7 +32,7 @@ export declare const DEFAULT_STREAM_MAX_BYTES: number;
|
|
|
31
32
|
* `readFramed` self-times-out at 5s and `dialProtocol` falls back to libp2p's default dial
|
|
32
33
|
* timeout (~30s) — so an unresponsive peer is slow, not hung. If a caller ever needs a tighter
|
|
33
34
|
* deadline (`membership-source.fetch` walks candidate peers *sequentially*, so its worst case is
|
|
34
|
-
* peers × dial-timeout),
|
|
35
|
+
* peers × dial-timeout), pass one through {@link openProtocolStream}'s `signal` the way
|
|
35
36
|
* `libp2p-key-network.ts#connect` does.
|
|
36
37
|
*/
|
|
37
38
|
export declare function requestResponse(node: Libp2p, peer: PeerId, protocol: string, frame: Uint8Array, maxBytes?: number): Promise<Uint8Array>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream-util.d.ts","sourceRoot":"","sources":["../../../src/cohort-topic/stream-util.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"stream-util.d.ts","sourceRoot":"","sources":["../../../src/cohort-topic/stream-util.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAc,MAAM,EAAU,MAAM,mBAAmB,CAAC;AAKpE,0EAA0E;AAC1E,eAAO,MAAM,wBAAwB,QAAa,CAAC;AAEnD;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACpC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,UAAU,EACjB,QAAQ,SAA2B,GACjC,OAAO,CAAC,UAAU,CAAC,CAiBrB;AAED,oGAAoG;AACpG,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB/G;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACpC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,EAC5E,QAAQ,SAA2B,GACjC,IAAI,CAiBN"}
|
|
@@ -14,47 +14,18 @@
|
|
|
14
14
|
* exactly one bounded frame per stream and then closes; if a caller ever writes repeatedly on one
|
|
15
15
|
* stream, honor the flag by awaiting the stream's `'drain'` event the way FRET's `rpcRequest` does.
|
|
16
16
|
*
|
|
17
|
-
* {@link
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* which
|
|
21
|
-
*
|
|
17
|
+
* NOTE: accepted tradeoff — both calls to {@link openProtocolStream} below deliberately omit
|
|
18
|
+
* `negotiateFully`, taking libp2p's default of full multistream-select negotiation at stream-open.
|
|
19
|
+
* FRET's `openRpcStream` and `libp2p-key-network.ts#connect` both pass `negotiateFully: false`,
|
|
20
|
+
* which saves a round trip but defers an unsupported-protocol failure from stream-open to the
|
|
21
|
+
* first read — that would turn {@link sendOneWay} against a peer lacking the protocol into a
|
|
22
|
+
* silent no-op. Revisit if stream-open latency shows up in a profile.
|
|
22
23
|
*/
|
|
23
24
|
import { readFramed, sendFramed } from "p2p-fret";
|
|
25
|
+
import { openProtocolStream } from "../network/open-protocol-stream.js";
|
|
26
|
+
import { registerProtocolHandler } from "../network/register-protocol-handler.js";
|
|
24
27
|
/** Default per-frame ceiling — matches FRET's 512 KiB maybe-act bound. */
|
|
25
28
|
export const DEFAULT_STREAM_MAX_BYTES = 512 * 1024;
|
|
26
|
-
/**
|
|
27
|
-
* libp2p refuses to open a protocol stream over a *limited* (circuit-relay) connection unless the
|
|
28
|
-
* caller opts in, so every peer reachable only through a relay — the steady state for browsers and
|
|
29
|
-
* NATed peers — depends on this flag. It is a harmless no-op on a direct connection.
|
|
30
|
-
*
|
|
31
|
-
* NOTE: accepted tradeoff — FRET's `openRpcStream` and `libp2p-key-network.ts#connect` also set
|
|
32
|
-
* `negotiateFully: false`; deliberately not set here. It saves a round trip but defers an
|
|
33
|
-
* unsupported-protocol failure from stream-open to the first read, which would turn
|
|
34
|
-
* {@link sendOneWay} against a peer lacking the protocol into a silent no-op. Revisit if
|
|
35
|
-
* stream-open latency shows up in a profile.
|
|
36
|
-
*/
|
|
37
|
-
const STREAM_OPTIONS = { runOnLimitedConnection: true };
|
|
38
|
-
/** True for a circuit-relay ("limited") connection: libp2p stamps one with per-circuit `limits`;
|
|
39
|
-
* sniffing `/p2p-circuit` in the multiaddr covers transports that leave `limits` unpopulated. */
|
|
40
|
-
function isLimitedConnection(c) {
|
|
41
|
-
if (c.limits != null)
|
|
42
|
-
return true;
|
|
43
|
-
return c.remoteAddr?.toString?.().includes("/p2p-circuit") ?? false;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Open `protocol` to `peer`, reusing a healthy existing connection when there is one.
|
|
47
|
-
*
|
|
48
|
-
* Skips connections libp2p has not yet evicted from its index but that are no longer open, and
|
|
49
|
-
* prefers a direct connection over a relayed one — a relayed connection can be reset once the
|
|
50
|
-
* relay's per-circuit cap or reservation lapses, and after DCUtR upgrades a link to direct both
|
|
51
|
-
* briefly coexist. Falls back to the relayed connection when it is the only open path.
|
|
52
|
-
*/
|
|
53
|
-
async function openStream(node, peer, protocol) {
|
|
54
|
-
const open = node.getConnections(peer).filter(c => c?.status === "open" && typeof c?.newStream === "function");
|
|
55
|
-
const chosen = open.find(c => !isLimitedConnection(c)) ?? open[0];
|
|
56
|
-
return chosen ? await chosen.newStream([protocol], STREAM_OPTIONS) : await node.dialProtocol(peer, [protocol], STREAM_OPTIONS);
|
|
57
|
-
}
|
|
58
29
|
/**
|
|
59
30
|
* Open `protocol` to `peer`, send `frame`, and read the bounded reply frame.
|
|
60
31
|
*
|
|
@@ -62,13 +33,14 @@ async function openStream(node, peer, protocol) {
|
|
|
62
33
|
* `readFramed` self-times-out at 5s and `dialProtocol` falls back to libp2p's default dial
|
|
63
34
|
* timeout (~30s) — so an unresponsive peer is slow, not hung. If a caller ever needs a tighter
|
|
64
35
|
* deadline (`membership-source.fetch` walks candidate peers *sequentially*, so its worst case is
|
|
65
|
-
* peers × dial-timeout),
|
|
36
|
+
* peers × dial-timeout), pass one through {@link openProtocolStream}'s `signal` the way
|
|
66
37
|
* `libp2p-key-network.ts#connect` does.
|
|
67
38
|
*/
|
|
68
39
|
export async function requestResponse(node, peer, protocol, frame, maxBytes = DEFAULT_STREAM_MAX_BYTES) {
|
|
69
40
|
let stream;
|
|
70
41
|
try {
|
|
71
|
-
|
|
42
|
+
// `negotiateFully` deliberately omitted — see the accepted tradeoff in the module docblock.
|
|
43
|
+
stream = await openProtocolStream(node, peer, protocol);
|
|
72
44
|
sendFramed(stream, frame);
|
|
73
45
|
await stream.close();
|
|
74
46
|
return await readFramed(stream, maxBytes);
|
|
@@ -88,7 +60,8 @@ export async function requestResponse(node, peer, protocol, frame, maxBytes = DE
|
|
|
88
60
|
export async function sendOneWay(node, peer, protocol, frame) {
|
|
89
61
|
let stream;
|
|
90
62
|
try {
|
|
91
|
-
|
|
63
|
+
// `negotiateFully` deliberately omitted — see the accepted tradeoff in the module docblock.
|
|
64
|
+
stream = await openProtocolStream(node, peer, protocol);
|
|
92
65
|
sendFramed(stream, frame);
|
|
93
66
|
await stream.close();
|
|
94
67
|
}
|
|
@@ -112,7 +85,7 @@ export async function sendOneWay(node, peer, protocol, frame) {
|
|
|
112
85
|
* resolves it as empty bytes, exactly what the old read-to-EOF returned for a silent close.
|
|
113
86
|
*/
|
|
114
87
|
export function handleRequestResponse(node, protocol, handle, maxBytes = DEFAULT_STREAM_MAX_BYTES) {
|
|
115
|
-
void node
|
|
88
|
+
void registerProtocolHandler(node, protocol, (stream, connection) => {
|
|
116
89
|
void (async () => {
|
|
117
90
|
try {
|
|
118
91
|
const frame = await readFramed(stream, maxBytes);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream-util.js","sourceRoot":"","sources":["../../../src/cohort-topic/stream-util.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"stream-util.js","sourceRoot":"","sources":["../../../src/cohort-topic/stream-util.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,GAAG,IAAI,CAAC;AAEnD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,IAAY,EACZ,IAAY,EACZ,QAAgB,EAChB,KAAiB,EACjB,QAAQ,GAAG,wBAAwB;IAEnC,IAAI,MAA0B,CAAC;IAC/B,IAAI,CAAC;QACJ,4FAA4F;QAC5F,MAAM,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACxD,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC1B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,MAAM,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;YAAS,CAAC;QACV,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC;gBACJ,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACtB,CAAC;YAAC,MAAM,CAAC;gBACR,oBAAoB;YACrB,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED,oGAAoG;AACpG,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAY,EAAE,IAAY,EAAE,QAAgB,EAAE,KAAiB;IAC/F,IAAI,MAA0B,CAAC;IAC/B,IAAI,CAAC;QACJ,4FAA4F;QAC5F,MAAM,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACxD,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC1B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;YAAS,CAAC;QACV,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC;gBACJ,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACtB,CAAC;YAAC,MAAM,CAAC;gBACR,oBAAoB;YACrB,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACpC,IAAY,EACZ,QAAgB,EAChB,MAA4E,EAC5E,QAAQ,GAAG,wBAAwB;IAEnC,KAAK,uBAAuB,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,MAAc,EAAE,UAAsB,EAAE,EAAE;QACvF,KAAK,CAAC,KAAK,IAAmB,EAAE;YAC/B,IAAI,CAAC;gBACJ,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACjD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;gBACzD,UAAU,CAAC,MAAM,EAAE,KAAK,IAAI,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/C,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACtB,CAAC;YAAC,MAAM,CAAC;gBACR,IAAI,CAAC;oBACJ,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAC;gBAC9D,CAAC;gBAAC,MAAM,CAAC;oBACR,qBAAqB;gBACtB,CAAC;YACF,CAAC;QACF,CAAC,CAAC,EAAE,CAAC;IACN,CAAC,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -24,13 +24,6 @@ export type CollectionEnv = {
|
|
|
24
24
|
readonly collectionId: CollectionId;
|
|
25
25
|
readonly log: Log<unknown>;
|
|
26
26
|
readonly createBlockStorage: (blockId: BlockId) => IBlockStorage;
|
|
27
|
-
/**
|
|
28
|
-
* Optional per-block commit-latch runner threaded into each cascade child's {@link applyInvalidation}
|
|
29
|
-
* so the child's compensating write serializes against a concurrent commit on the same block — the
|
|
30
|
-
* same mutual-exclusion the root apply gets (see `InvalidationContext.withBlockCommitLatch`). Omitted
|
|
31
|
-
* → child writes run unlatched (today's behavior).
|
|
32
|
-
*/
|
|
33
|
-
readonly withBlockCommitLatch?: <T>(blockId: BlockId, fn: () => Promise<T>) => Promise<T>;
|
|
34
27
|
};
|
|
35
28
|
/**
|
|
36
29
|
* A block revision proven invalid: a committed action wrote `blockId` at `rev`, and that action has
|
|
@@ -143,7 +136,13 @@ export type CascadeEscalation = {
|
|
|
143
136
|
readonly collections: ReadonlyArray<CollectionId>;
|
|
144
137
|
/** Read-dependents left un-cascaded at the horizon — surfaced, never silently dropped. */
|
|
145
138
|
readonly remainder: ReadonlyArray<CascadeStanding>;
|
|
146
|
-
/**
|
|
139
|
+
/**
|
|
140
|
+
* Candidates whose fate could not be decided — a legacy entry with no persisted read set (no engine
|
|
141
|
+
* to re-execute it), or one the cascade decided to invalidate but whose `applyInvalidation` did not
|
|
142
|
+
* apply (a wholesale-refused compensating write, reason `stale-revision`; any other non-applied
|
|
143
|
+
* reason lands here too), so the reversal did not happen and the dependent must not be dropped from
|
|
144
|
+
* the frontier as if it were fine.
|
|
145
|
+
*/
|
|
147
146
|
readonly unevaluable: ReadonlyArray<CascadeStanding>;
|
|
148
147
|
};
|
|
149
148
|
export type CascadeResult = {
|