@peerbit/shared-log 13.2.23 → 13.2.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/checked-prune.d.ts +12 -0
- package/dist/src/checked-prune.d.ts.map +1 -1
- package/dist/src/checked-prune.js +33 -0
- package/dist/src/checked-prune.js.map +1 -1
- package/dist/src/coordinate-persistence.d.ts +211 -0
- package/dist/src/coordinate-persistence.d.ts.map +1 -0
- package/dist/src/coordinate-persistence.js +1133 -0
- package/dist/src/coordinate-persistence.js.map +1 -0
- package/dist/src/errors.d.ts +1 -0
- package/dist/src/errors.d.ts.map +1 -1
- package/dist/src/errors.js +19 -0
- package/dist/src/errors.js.map +1 -1
- package/dist/src/index.d.ts +139 -133
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1491 -4265
- package/dist/src/index.js.map +1 -1
- package/dist/src/instance-lifecycle.d.ts +117 -0
- package/dist/src/instance-lifecycle.d.ts.map +1 -0
- package/dist/src/instance-lifecycle.js +254 -0
- package/dist/src/instance-lifecycle.js.map +1 -0
- package/dist/src/join-warmup.d.ts +86 -0
- package/dist/src/join-warmup.d.ts.map +1 -0
- package/dist/src/join-warmup.js +351 -0
- package/dist/src/join-warmup.js.map +1 -0
- package/dist/src/leader-plan-cache.d.ts +33 -0
- package/dist/src/leader-plan-cache.d.ts.map +1 -0
- package/dist/src/leader-plan-cache.js +49 -0
- package/dist/src/leader-plan-cache.js.map +1 -0
- package/dist/src/native-write-through-block-store.d.ts +123 -0
- package/dist/src/native-write-through-block-store.d.ts.map +1 -0
- package/dist/src/native-write-through-block-store.js +989 -0
- package/dist/src/native-write-through-block-store.js.map +1 -0
- package/dist/src/peer-session.d.ts +117 -0
- package/dist/src/peer-session.d.ts.map +1 -0
- package/dist/src/peer-session.js +259 -0
- package/dist/src/peer-session.js.map +1 -0
- package/dist/src/ranges.d.ts +2 -2
- package/dist/src/ranges.d.ts.map +1 -1
- package/dist/src/ranges.js +10 -8
- package/dist/src/ranges.js.map +1 -1
- package/dist/src/replication-announcement.d.ts +116 -0
- package/dist/src/replication-announcement.d.ts.map +1 -0
- package/dist/src/replication-announcement.js +515 -0
- package/dist/src/replication-announcement.js.map +1 -0
- package/dist/src/replicator-liveness.d.ts +59 -0
- package/dist/src/replicator-liveness.d.ts.map +1 -0
- package/dist/src/replicator-liveness.js +304 -0
- package/dist/src/replicator-liveness.js.map +1 -0
- package/dist/src/sync/dispatch-lifecycle.d.ts +48 -0
- package/dist/src/sync/dispatch-lifecycle.d.ts.map +1 -0
- package/dist/src/sync/dispatch-lifecycle.js +141 -0
- package/dist/src/sync/dispatch-lifecycle.js.map +1 -0
- package/dist/src/sync/factory.d.ts +29 -0
- package/dist/src/sync/factory.d.ts.map +1 -0
- package/dist/src/sync/factory.js +87 -0
- package/dist/src/sync/factory.js.map +1 -0
- package/dist/src/sync/pending-sync-store.d.ts +105 -0
- package/dist/src/sync/pending-sync-store.d.ts.map +1 -0
- package/dist/src/sync/pending-sync-store.js +877 -0
- package/dist/src/sync/pending-sync-store.js.map +1 -0
- package/dist/src/sync/rateless-iblt.d.ts +4 -1
- package/dist/src/sync/rateless-iblt.d.ts.map +1 -1
- package/dist/src/sync/rateless-iblt.js +102 -106
- package/dist/src/sync/rateless-iblt.js.map +1 -1
- package/dist/src/sync/simple.d.ts +10 -41
- package/dist/src/sync/simple.d.ts.map +1 -1
- package/dist/src/sync/simple.js +259 -952
- package/dist/src/sync/simple.js.map +1 -1
- package/dist/src/sync/sync-peer-state.d.ts +16 -0
- package/dist/src/sync/sync-peer-state.d.ts.map +1 -0
- package/dist/src/sync/sync-peer-state.js +82 -0
- package/dist/src/sync/sync-peer-state.js.map +1 -0
- package/package.json +22 -21
- package/src/checked-prune.ts +35 -0
- package/src/coordinate-persistence.ts +1796 -0
- package/src/errors.ts +21 -0
- package/src/index.ts +6367 -10052
- package/src/instance-lifecycle.ts +351 -0
- package/src/join-warmup.ts +507 -0
- package/src/leader-plan-cache.ts +61 -0
- package/src/native-write-through-block-store.ts +1170 -0
- package/src/peer-session.ts +336 -0
- package/src/ranges.ts +22 -16
- package/src/replication-announcement.ts +744 -0
- package/src/replicator-liveness.ts +439 -0
- package/src/sync/dispatch-lifecycle.ts +230 -0
- package/src/sync/factory.ts +154 -0
- package/src/sync/pending-sync-store.ts +1085 -0
- package/src/sync/rateless-iblt.ts +122 -132
- package/src/sync/simple.ts +334 -1144
- package/src/sync/sync-peer-state.ts +107 -0
- package/dist/benchmark/adaptive-ingest.d.ts +0 -2
- package/dist/benchmark/adaptive-ingest.d.ts.map +0 -1
- package/dist/benchmark/adaptive-ingest.js +0 -275
- package/dist/benchmark/adaptive-ingest.js.map +0 -1
- package/dist/benchmark/get-samples.d.ts +0 -2
- package/dist/benchmark/get-samples.d.ts.map +0 -1
- package/dist/benchmark/get-samples.js +0 -194
- package/dist/benchmark/get-samples.js.map +0 -1
- package/dist/benchmark/index.d.ts +0 -2
- package/dist/benchmark/index.d.ts.map +0 -1
- package/dist/benchmark/index.js +0 -224
- package/dist/benchmark/index.js.map +0 -1
- package/dist/benchmark/join-backfill-repair.d.ts +0 -2
- package/dist/benchmark/join-backfill-repair.d.ts.map +0 -1
- package/dist/benchmark/join-backfill-repair.js +0 -288
- package/dist/benchmark/join-backfill-repair.js.map +0 -1
- package/dist/benchmark/memory/child.d.ts +0 -2
- package/dist/benchmark/memory/child.d.ts.map +0 -1
- package/dist/benchmark/memory/child.js +0 -204
- package/dist/benchmark/memory/child.js.map +0 -1
- package/dist/benchmark/memory/index.d.ts +0 -2
- package/dist/benchmark/memory/index.d.ts.map +0 -1
- package/dist/benchmark/memory/index.js +0 -81
- package/dist/benchmark/memory/index.js.map +0 -1
- package/dist/benchmark/memory/utils.d.ts +0 -13
- package/dist/benchmark/memory/utils.d.ts.map +0 -1
- package/dist/benchmark/memory/utils.js +0 -2
- package/dist/benchmark/memory/utils.js.map +0 -1
- package/dist/benchmark/native-graph.d.ts +0 -2
- package/dist/benchmark/native-graph.d.ts.map +0 -1
- package/dist/benchmark/native-graph.js +0 -359
- package/dist/benchmark/native-graph.js.map +0 -1
- package/dist/benchmark/network-preset-e2e.d.ts +0 -2
- package/dist/benchmark/network-preset-e2e.d.ts.map +0 -1
- package/dist/benchmark/network-preset-e2e.js +0 -497
- package/dist/benchmark/network-preset-e2e.js.map +0 -1
- package/dist/benchmark/partial-sync.d.ts +0 -3
- package/dist/benchmark/partial-sync.d.ts.map +0 -1
- package/dist/benchmark/partial-sync.js +0 -121
- package/dist/benchmark/partial-sync.js.map +0 -1
- package/dist/benchmark/pid-convergence.d.ts +0 -2
- package/dist/benchmark/pid-convergence.d.ts.map +0 -1
- package/dist/benchmark/pid-convergence.js +0 -138
- package/dist/benchmark/pid-convergence.js.map +0 -1
- package/dist/benchmark/rateless-iblt-sender-startsync.d.ts +0 -2
- package/dist/benchmark/rateless-iblt-sender-startsync.d.ts.map +0 -1
- package/dist/benchmark/rateless-iblt-sender-startsync.js +0 -104
- package/dist/benchmark/rateless-iblt-sender-startsync.js.map +0 -1
- package/dist/benchmark/rateless-iblt-startsync-cache.d.ts +0 -2
- package/dist/benchmark/rateless-iblt-startsync-cache.d.ts.map +0 -1
- package/dist/benchmark/rateless-iblt-startsync-cache.js +0 -112
- package/dist/benchmark/rateless-iblt-startsync-cache.js.map +0 -1
- package/dist/benchmark/receive-prune.d.ts +0 -2
- package/dist/benchmark/receive-prune.d.ts.map +0 -1
- package/dist/benchmark/receive-prune.js +0 -818
- package/dist/benchmark/receive-prune.js.map +0 -1
- package/dist/benchmark/replication-prune.d.ts +0 -2
- package/dist/benchmark/replication-prune.d.ts.map +0 -1
- package/dist/benchmark/replication-prune.js +0 -105
- package/dist/benchmark/replication-prune.js.map +0 -1
- package/dist/benchmark/replication.d.ts +0 -2
- package/dist/benchmark/replication.d.ts.map +0 -1
- package/dist/benchmark/replication.js +0 -88
- package/dist/benchmark/replication.js.map +0 -1
- package/dist/benchmark/sync-batch-sweep.d.ts +0 -2
- package/dist/benchmark/sync-batch-sweep.d.ts.map +0 -1
- package/dist/benchmark/sync-batch-sweep.js +0 -353
- package/dist/benchmark/sync-batch-sweep.js.map +0 -1
- package/dist/benchmark/sync-catchup.d.ts +0 -2
- package/dist/benchmark/sync-catchup.d.ts.map +0 -1
- package/dist/benchmark/sync-catchup.js +0 -277
- package/dist/benchmark/sync-catchup.js.map +0 -1
- package/dist/benchmark/sync-phase-profile.d.ts +0 -2
- package/dist/benchmark/sync-phase-profile.d.ts.map +0 -1
- package/dist/benchmark/sync-phase-profile.js +0 -303
- package/dist/benchmark/sync-phase-profile.js.map +0 -1
- package/dist/benchmark/to-rebalance.d.ts +0 -2
- package/dist/benchmark/to-rebalance.d.ts.map +0 -1
- package/dist/benchmark/to-rebalance.js +0 -117
- package/dist/benchmark/to-rebalance.js.map +0 -1
- package/dist/benchmark/utils.d.ts +0 -24
- package/dist/benchmark/utils.d.ts.map +0 -1
- package/dist/benchmark/utils.js +0 -47
- package/dist/benchmark/utils.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coordinate-persistence.js","sourceRoot":"","sources":["../../src/coordinate-persistence.ts"],"names":[],"mappings":"AAEA,OAAO,EAGN,EAAE,EACF,WAAW,EACX,IAAI,GACJ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACN,KAAK,EACL,SAAS,GAIT,MAAM,cAAc,CAAC;AAYtB,OAAO,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAC;AAmBtE,OAAO,EAEN,iBAAiB,EACjB,4BAA4B,IAAI,2BAA2B,GAC3D,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAEN,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,GAChB,MAAM,mBAAmB,CAAC;AAO3B,MAAM,CAAC,MAAM,aAAa,GAAG,CAAI,KAAsB,EAAuB,EAAE,CAC/E,CAAC,CAAC,KAAK,IAAI,OAAQ,KAAoB,CAAC,IAAI,KAAK,UAAU,CAAC;AAE7D,MAAM,CAAC,MAAM,eAAe,GAAG,CAC9B,KAAsB,EACtB,EAAiC,EACf,EAAE,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAE1E,MAAM,YAAY,GAAa,EAAE,CAAC;AAElC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAwB,EAAY,EAAE;IAC1E,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,YAAY,CAAC;QACrB,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;QAC1C,CAAC;IACF,CAAC;IACD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,SAAS;QACV,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAC5C,UAAoB,EACpB,YAAuB,EACZ,EAAE;IACb,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,OAAO,UAAU,CAAC;IACnB,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,YAAY,CAAC;IACrB,CAAC;IACD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;IACF,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;IACF,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAmDF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,gCAAgC;IA0Bf;IAzB7B;;;;OAIG;IACH,+BAA+B,CAA2C;IAE1E,yEAAyE;IACzE,oCAAoC,CAA8C;IAElF,gEAAgE;IAChE,oEAAoE;IACpE,oEAAoE;IACpE,sEAAsE;IACtE,uEAAuE;IACvE,yEAAyE;IACzE,mDAAmD;IACnD,oCAAoC,CAAuB;IAE3D;;;OAGG;IACH,2CAA2C,GAAG,CAAC,CAAC;IAEhD,YAA6B,IAAkC;QAAlC,SAAI,GAAJ,IAAI,CAA8B;IAAG,CAAC;IAEnE,0BAA0B,CACzB,MAAwB,EACxB,4BAA8C;QAE9C,IAAI,4BAA4B,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;QACR,CAAC;QACD,IAAI,CAAC,kCAAkC,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAEtD,CAAC;QACF,IAAI,eAAe,CAAC,cAAc,EAAE,CAAC;YACpC,OAAO,eAAe,CAAC,eAAe,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE;gBACnE,IAAI,4BAA4B,EAAE,CAAC;oBAClC,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;gBACH,CAAC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;YAC5B,OAAO,eAAe,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE;gBAC3D,IAAI,4BAA4B,EAAE,CAAC;oBAClC,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;gBACH,CAAC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,eAAe,CACrB,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC;YACrC,KAAK,EACJ,MAAM,CAAC,MAAM,KAAK,CAAC;gBAClB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE;gBACrB,CAAC,CAAC,IAAI,EAAE,CACN,MAAM,CAAC,GAAG,CACT,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,WAAW,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CACvD,CACD;SACJ,CAAC,EACF,GAAG,EAAE;YACJ,IAAI,4BAA4B,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;YACH,CAAC;QACF,CAAC,CACD,CAAC;IACH,CAAC;IAED,8BAA8B,CAAC,MAAwB;QACtD,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;QACR,CAAC;QACD,IAAI,CAAC,kCAAkC,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,kCAAkC,CAAC,MAAgB;QAClD,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,2BAA2B,CAAC,MAAM,CAAC,CAAC;QACtE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,2BAA2B,CAAC,MAAM,CAAC,CAAC;QAChE,IAAI,CAAC,0CAA0C,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IAED,sCAAsC,CAAC,MAAwB;QAC9D,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;QACR,CAAC;QACD,IAAI,CAAC,0CAA0C,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IAED,0CAA0C,CAAC,MAAgB;QAC1D,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;YAC1C,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACnD,CAAC;QACF,CAAC;IACF,CAAC;IACD,KAAK,CAAC,iBAAiB,CACtB,KAAuE,EACvE,WAAmB;QAEnB,IACC,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAO,KAAK,KAAK,QAAQ;YACzB,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EACpC,CAAC;YACF,MAAM,iBAAiB,GAAG,CACzB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAC5D,EAAE,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAEpC,CAAC;YACb,IAAI,iBAAiB,EAAE,CAAC;gBACvB,OAAO,iBAAiB,CAAC;YAC1B,CAAC;QACF,CAAC;QAED,MAAM,MAAM,GACX,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ;YACrD,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,UAAU,GAAG,CAClB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAC5D,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW,CAAoC,CAAC;QACnE,OAAO,CACN,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAC9E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAAuB;QAC3C,MAAM,iBAAiB,GAAG,CACzB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAC9D,EAAE,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,iBAAiB,EAAE,CAAC;YACvB,OAAO,iBAAwC,CAAC;QACjD,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;aACpD,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;aACxC,GAAG,EAAE,CAAC;QACR,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;IACpC,CAAC;IAED,8BAA8B,CAAC,MAAwB;QACtD,MAAM,UAAU,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;QAC/B,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,CAAC;QACX,CAAC;QACD,MAAM,gBAAgB,GACrB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC;YACrE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,KAAK,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAClE,IAAI,gBAAgB,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,CAAC;YACvD,OAAO,gBAAgB,CAAC;QACzB,CAAC;QACD,MAAM,aAAa,GAClB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,gCAAgC,CAAC,UAAU,CAAC;YACvE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC;QACpE,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACvB,OAAO,aAAa,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;YACpB,OAAO,gBAAgB,CAAC;QACzB,CAAC;QACD,OAAO,gBAAgB,CAAC,GAAG,CAC1B,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,aAAa,CAAC,KAAK,CAAC,CAC/C,CAAC;IACH,CAAC;IAED,oCAAoC,CACnC,aAIE,EACF,OAGC;QAED,MAAM,aAAa,GAAG,IAAI,GAAG,EAA4C,CAAC;QAC1E,IAAI,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,qBAAqB,EAAE,CAAC;YAC9E,OAAO,aAAa,CAAC;QACtB,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC;YAC9B,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,SAAS;YACV,CAAC;YACD,MAAM,QAAQ,GACb,OAAO,EAAE,oBAAoB,EAAE,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;gBAC1D,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC9D,IAAI,QAAQ,KAAK,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvC,SAAS;YACV,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,8CAA8C,CAAC;gBACpE,KAAK,EAAE,KAAK,CAAC,WAAW;gBACxB,IAAI;gBACJ,QAAQ;aACR,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,SAAS;YACV,CAAC;YACD,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE;gBACzC,IAAI;gBACJ,QAAQ;gBACR,QAAQ;aACR,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,aAAa,CAAC;IACtB,CAAC;IAED,wCAAwC,CACvC,KAAsC;QAEtC,IACC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YAC3B,KAAK,CAAC,MAAM,KAAK,CAAC;YAClB,CAAC,IAAI,CAAC,uCAAuC,EAAE,EAC9C,CAAC;YACF,OAAO,SAAS,CAAC;QAClB,CAAC;QAED,MAAM,IAAI,GAAG,KAAK;aAChB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC/B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAS,CAAC;YAChC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxD,OAAO;gBACN,IAAI;gBACJ,QAAQ;gBACR,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,YAAY;aACZ,CAAC;QACH,CAAC,CAAC,CAAC;QACJ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QAClB,CAAC;QAED,OAAO;YACN,IAAI;YACJ,yBAAyB,EAAE,IAAI,CAAC,iCAAiC,CAChE,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CACjE;SACD,CAAC;IACH,CAAC;IAED,4CAA4C,CAC3C,IAA6C;QAE7C,MAAM,MAAM,GAAG,IAAI,KAAK,CAAS,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,IAAI,KAAK,CAAS,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,gBAAgB,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,gBAAgB,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,gBAAgB,GAAG,IAAI,cAAc,CAC1C,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CACjE,CAAC;QACF,MAAM,eAAe,GAAG,IAAI,KAAK,CAAW,IAAI,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,yBAAyB,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,sBAAsB,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;YAC1D,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5B,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC;YACrB,gBAAgB,CAAC,CAAC,CAAC;gBAClB,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ;oBACpC,CAAC,CAAC,MAAM,CAAC,UAAU;oBACnB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC;YACzD,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YAChD,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC7C,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;oBACnC,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACnE,CAAC;YACD,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC;YAClC,yBAAyB,CAAC,CAAC,CAAC;gBAC3B,QAAQ,CAAC,uBAAuB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,sBAAsB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC3C,CAAC;QACD,OAAO;YACN,MAAM;YACN,IAAI;YACJ,gBAAgB;YAChB,gBAAgB;YAChB,gBAAgB;YAChB,eAAe;YACf,yBAAyB;YACzB,sBAAsB;SACtB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,wCAAwC,CAC7C,KAA8C,EAC9C,OAAuB;QAEvB,MAAM,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAC1C,MAAM,oBAAoB,GAAkC,EAAE,CAAC;QAC/D,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,KAAK,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACnE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,+BAA+B,EAAE,GAAG,CACxC,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,QAAQ,CAAC,eAAe,IAAI,MAAM,CAClC,CAAC;YACF,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACxC,IAAI,CAAC,+BAA+B,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC1D,WAAW,EAAE,CAAC;YACf,CAAC;YACD,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3C,oBAAoB,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC3D,uBAAuB,CAAC,OAAO,EAAE,eAAe,EAAE;YACjD,IAAI,EAAE,4CAA4C;YAClD,SAAS,EAAE,YAAY;YACvB,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM;YAC1B,KAAK,EAAE,oBAAoB,CAAC,MAAM;YAClC,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;SACjC,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,4CAA4C,EAAE,CAAC;QACpE,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,MAAM,OAAO,CAAC;QACf,CAAC;QACD,uBAAuB,CAAC,OAAO,EAAE,cAAc,EAAE;YAChD,IAAI,EAAE,0CAA0C;YAChD,SAAS,EAAE,YAAY;YACvB,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM;YAC1B,QAAQ,EAAE,CAAC;SACX,CAAC,CAAC;QACH,OAAO,eAAe,CAAC;IACxB,CAAC;IAED,0CAA0C,CACzC,KAA8C;QAE9C,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACnC,IAAI,CAAC,sCAAsC,CAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,KAAK,CAAC,yBAAyB,CAC/B,CAAC;QACH,CAAC;IACF,CAAC;IAED,KAAK,CAAC,yCAAyC,CAC9C,KAAsC;QAEtC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,wCAAwC,CAAC,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,IAAI,CAAC;YACJ,QAAQ,CAAC,kCAAkC,CAC1C,IAAI,CAAC,4CAA4C,CAAC,KAAK,CAAC,IAAI,CAAC,CAC7D,CAAC;YACF,OAAO,MAAM,IAAI,CAAC,wCAAwC,CAAC,KAAK,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,0CAA0C,CAAC,KAAK,CAAC,CAAC;YACvD,MAAM,KAAK,CAAC;QACb,CAAC;IACF,CAAC;IAED,kCAAkC,CACjC,OAAkC,EAClC,aAAsD,EACtD,OAAe,EACf,WAAmB;QAEnB,IAAI,CAAC,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;YAChC,OAAO;QACR,CAAC;QACD,MAAM,MAAM,GAA8D;YACzE;gBACC,gDAAgD;gBAChD,aAAa,CAAC,sCAAsC;aACpD;YACD;gBACC,0CAA0C;gBAC1C,aAAa,CAAC,gCAAgC;gBAC9C,WAAW;aACX;YACD;gBACC,gDAAgD;gBAChD,aAAa,CAAC,sCAAsC;aACpD;YACD;gBACC,4CAA4C;gBAC5C,aAAa,CAAC,kCAAkC;aAChD;YACD;gBACC,iDAAiD;gBACjD,aAAa,CAAC,gCAAgC;aAC9C;YACD;gBACC,4CAA4C;gBAC5C,aAAa,CAAC,kCAAkC;aAChD;YACD;gBACC,4CAA4C;gBAC5C,aAAa,CAAC,kCAAkC;aAChD;YACD;gBACC,oDAAoD;gBACpD,aAAa,CAAC,0CAA0C;aACxD;SACD,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YAChD,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACpB,oBAAoB,CAAC,OAAO,EAAE;oBAC7B,IAAI;oBACJ,SAAS,EAAE,YAAY;oBACvB,UAAU;oBACV,OAAO;oBACP,KAAK;oBACL,QAAQ,EAAE,CAAC;iBACX,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;IACF,CAAC;IAED,sCAAsC,CACrC,eAAyD,EACzD,sBAES,EACT,YAAuB,EACvB,eAAe,GAAG,KAAK,EACvB,OAAuB,EACvB,0BAAuD;QAWvD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,IACC,CAAC,QAAQ;YACT,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,UAAU,KAAK,QAAQ,CAAC,MAAM;YACxD,CAAC,YAAY;gBACZ,YAAY,CAAC,MAAM,GAAG,CAAC;gBACvB,CAAC,QAAQ,CAAC,KAAK,CAAC,yCAAyC,CAAC,EAC1D,CAAC;YACF,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,EACP,OAAO,EACP,MAAM,EACN,SAAS,EACT,cAAc,EACd,cAAc,EACd,YAAY,GACZ,EAAE,EAAE;YACJ,IAAI,CAAC,IAAI,CAAC,mCAAmC,EAAE,CAAC;YAChD,IAAI,CAAC,cAAc,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7C,OAAO,KAAK,CAAC;YACd,CAAC;YACD,MAAM,iBAAiB,GACtB,eAAe,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;gBACjD,CAAC,CAAC,IAAI,CAAC,4CAA4C,CACjD,eAAe,CAAC,IAAI,CACpB;gBACF,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,YAAY,EAAE,CAAC;gBAClB,MAAM,uBAAuB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC1D,MAAM,qBAAqB,GAC1B,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,QAAQ,CAAC,kBAAkB;oBAC7B,CAAC,CAAC,QAAQ,CAAC,uBAAuB;oBAClC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;gBAC1B,IAAI,qBAAqB,EAAE,CAAC;oBAC3B,QAAQ,CAAC,kBAAkB,EAAE,CAAC;oBAC9B,QAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBACxC,CAAC;gBACD,IAAI,SAA8B,CAAC;gBACnC,IAAI,CAAC;oBACJ,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC7C,IAAI,eAAe,EAAE,CAAC;4BACrB,SAAS;gCACR,QAAQ,CAAC,KAAK,CAAC,4CAA4C,EAAE,CAC5D,MAAM,EACN,cAAc,EACd,iBAAiB,CACjB,CAAC;wBACJ,CAAC;wBACD,SAAS;4BACR,QAAQ,CAAC,KAAK,CAAC,yCAAyC,EAAE,CACzD,MAAM,EACN,cAAc,EACd,YAAY,EACZ,iBAAiB,CACjB,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACP,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,iCAAiC,EAAE,CAC7D,MAAM,EACN,cAAc,EACd,iBAAiB,CACjB,CAAC;oBACH,CAAC;gBACF,CAAC;wBAAS,CAAC;oBACV,IAAI,qBAAqB,EAAE,CAAC;wBAC3B,QAAQ,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;wBACxC,IAAI,CAAC,kCAAkC,CACtC,OAAO,EACP,QAAQ,CAAC,aAAa,EAAE,EACxB,OAAO,CAAC,MAAM,EACd,YAAY,EAAE,MAAM,IAAI,CAAC,CACzB,CAAC;oBACH,CAAC;gBACF,CAAC;gBACD,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC;oBACxD,uBAAuB,CAAC,OAAO,EAAE,uBAAuB,EAAE;wBACzD,IAAI,EAAE,wCAAwC;wBAC9C,SAAS,EAAE,YAAY;wBACvB,OAAO,EAAE,OAAO,CAAC,MAAM;wBACvB,KAAK,EAAE,YAAY,CAAC,MAAM;wBAC1B,QAAQ,EAAE,CAAC;qBACX,CAAC,CAAC;gBACJ,CAAC;gBACD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;oBACxB,0BAA0B,EAAE,CAAC,MAAM,CAAC,CAAC;oBACrC,IAAI,eAAe,EAAE,CAAC;wBACrB,sBAAsB,EAAE,CAAC,eAAe,CAAC,CAAC;oBAC3C,CAAC;oBACD,OAAO,IAAI,CAAC;gBACb,CAAC;gBACD,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;oBACzB,QAAQ,CAAC,KAAK,CAAC,8BAA8B,EAAE,CAAC,MAAM,CAAC,CAAC;oBACxD,OAAO,KAAK,CAAC;gBACd,CAAC;YACF,CAAC;YACD,IACC,QAAQ,CAAC,KAAK,CAAC,6BAA6B,CAC3C,MAAM,EACN,cAAc,EACd,iBAAiB,CACjB,EACA,CAAC;gBACF,0BAA0B,EAAE,CAAC,MAAM,CAAC,CAAC;gBACrC,IAAI,eAAe,EAAE,CAAC;oBACrB,sBAAsB,EAAE,CAAC,eAAe,CAAC,CAAC;gBAC3C,CAAC;gBACD,OAAO,IAAI,CAAC;YACb,CAAC;YACD,MAAM,aAAa,GAAG,IAAI,KAAK,CAC9B,OAAO,CAAC,MAAM,CACd,CAAC;YACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;gBAC1B,IACC,CAAC,KAAK,CAAC,KAAK;oBACZ,CAAC,KAAK,CAAC,WAAW;oBAClB,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,EACnC,CAAC;oBACF,OAAO,KAAK,CAAC;gBACd,CAAC;gBACD,aAAa,CAAC,CAAC,CAAC,GAAG;oBAClB,GAAG,KAAK,CAAC,WAAW;oBACpB,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI;oBAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;iBAClB,CAAC;YACH,CAAC;YACD,IAAI,eAAe,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxD,QAAQ,CAAC,KAAK,CAAC,oCAAoC,CAClD,aAAa,EACb,iBAAkB,CAClB,CAAC;gBACF,sBAAsB,EAAE,CAAC,eAAe,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACP,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;YACzD,CAAC;YACD,0BAA0B,EAAE,CAAC,MAAM,CAAC,CAAC;YACrC,OAAO,IAAI,CAAC;QACb,CAAC,CAAC;IACH,CAAC;IAED,8CAA8C,CAAC,UAI9C;QACA,MAAM,uBAAuB,GAC5B,UAAU,CAAC,IAAI,CAAC,uBAAuB;YACvC,2BAA2B,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAClE,MAAM,SAAS,GAAI,UAAU,CAAC,KAA4B,CAAC,YAAY,EAAE,EAAE,CAAC;QAC5E,IAAI,SAAS,EAAE,CAAC;YACf,MAAM,YAAY,GACjB,UAAU,CAAC,KAAK,YAAY,KAAK;gBAChC,CAAC,CAAC,+BAA+B,CAAC,UAAU,CAAC,KAAK,CAAC;gBACnD,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,QAAQ,GACb,YAAY,EAAE,QAAQ;gBACtB,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;YAChD,OAAO;gBACN,uBAAuB;gBACvB,MAAM,EAAE;oBACP,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI;oBAC3B,UAAU;oBACV,gBAAgB,EAAE,UAAU,CAAC,QAAQ,EAAE;oBACvC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC;oBAC5C,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW;oBACxC,iBAAiB,EAChB,UAAU,CAAC,IAAI,CAAC,iBAAiB;wBACjC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAC9C,UAAU,CAAC,QAAQ,EAAE,CACrB;oBACF,QAAQ;oBACR,cAAc,EAAE,QAAQ,CAAC,QAAQ,EAAE;oBACnC,uBAAuB;oBACvB,SAAS;iBACT;aACD,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,gCAAgC,CAAC;YAC5C,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW;YACxC,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO;YAChC,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,uBAAuB;YACvB,UAAU;SACV,CAAC,CAAC;IACJ,CAAC;IAED,gCAAgC,CAAC,UAehC;QACA,MAAM,uBAAuB,GAC5B,UAAU,CAAC,uBAAuB;YAClC,2BAA2B,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAEtE,IACC,UAAU,CAAC,IAAI;YACf,UAAU,CAAC,IAAI,CAAC,uBAAuB,KAAK,uBAAuB,EAClE,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAI,UAAU,CAAC,KAA4B,CAAC,YAAY,EAAE,EAAE,CAAC;QAC5E,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,gBAAgB,CAAC,CAAC;YAC1E,uBAAuB;YACvB,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI;YAC3B,SAAS;YACT,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI;YAC3B,UAAU,EACT,UAAU,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,KAAK,CAAC;SACxE,CAAC,CAAC;QACH,OAAO;YACN,eAAe;YACf,uBAAuB;YACvB,MAAM,EAAE;gBACP,IAAI,EAAE,eAAe,CAAC,IAAI;gBAC1B,UAAU,EAAE,eAAe,CAAC,UAAU;gBACtC,GAAG,EAAE,eAAe,CAAC,GAAG;gBACxB,WAAW,EAAE,eAAe,CAAC,WAAW;gBACxC,QAAQ,EAAE,eAAe,CAAC,QAAQ;gBAClC,uBAAuB,EAAE,eAAe,CAAC,uBAAuB;gBAChE,SAAS,EAAE,eAAe,CAAC,YAAY,EAAE;aACzC;SACD,CAAC;IACH,CAAC;IAED,8CAA8C,CAAC,UAI9C;QACA,IACC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,KAAK,CAAC,IAAI;YAC9C,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,EAC9D,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,MAAM,uBAAuB,GAAG,UAAU,CAAC,IAAI,CAAC,uBAAuB,CAAC;QACxE,IACC,UAAU,CAAC,IAAI;YACf,UAAU,CAAC,IAAI,CAAC,uBAAuB,KAAK,uBAAuB,EAClE,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QAED,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,WAAkC,CAAC;QACvE,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,UAA+B,CAAC;QACnE,MAAM,SAAS,GAAI,UAAU,CAAC,KAA4B,CAAC,YAAY,EAAE,EAAE,CAAC;QAC5E,IAAI,SAAS,EAAE,CAAC;YACf,MAAM,YAAY,GACjB,UAAU,CAAC,KAAK,YAAY,KAAK;gBAChC,CAAC,CAAC,+BAA+B,CAAC,UAAU,CAAC,KAAK,CAAC;gBACnD,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,QAAQ,GACb,YAAY,EAAE,QAAQ;gBACtB,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;YAChD,OAAO;gBACN,uBAAuB;gBACvB,MAAM,EAAE;oBACP,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI;oBAC1B,UAAU;oBACV,gBAAgB,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;oBAClD,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG;oBACxB,WAAW;oBACX,iBAAiB,EAAE,UAAU,CAAC,IAAI,CAAC,iBAAiB;oBACpD,QAAQ;oBACR,cAAc,EAAE,QAAQ,CAAC,QAAQ,EAAE;oBACnC,uBAAuB;oBACvB,SAAS;iBACT;aACD,CAAC;QACH,CAAC;QACD,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;QACxC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,gBAAgB,CAAC,CAAC;YAC1E,uBAAuB;YACvB,WAAW;YACX,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI;YAC1B,UAAU;SACV,CAAC,CAAC;QACH,OAAO;YACN,eAAe;YACf,uBAAuB;YACvB,MAAM,EAAE;gBACP,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI;gBAC1B,UAAU;gBACV,gBAAgB,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;gBAClD,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG;gBACxB,WAAW;gBACX,iBAAiB,EAAE,UAAU,CAAC,IAAI,CAAC,iBAAiB;gBACpD,QAAQ,EAAE,eAAe,CAAC,QAAQ;gBAClC,cAAc,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,EAAE;gBACnD,uBAAuB;gBACvB,SAAS,EAAE,eAAe,CAAC,YAAY,EAAE;aACzC;SACD,CAAC;IACH,CAAC;IAED,qCAAqC,CACpC,MAA0C;QAE1C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,gBAAgB,CAAC,CAAC;YACzD,uBAAuB,EAAE,MAAM,CAAC,uBAAuB;YACvD,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,UAAU,EAAE,MAAM,CAAC,UAAU;SAC7B,CAAC,CAAC;IACJ,CAAC;IAED,kCAAkC,CACjC,QAA0C;QAE1C,OAAO,CAAC,QAAQ,CAAC,eAAe;YAC/B,IAAI,CAAC,qCAAqC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,kCAAkC,CACjC,KAAiC;QAEjC,OAAO,iBAAiB,CAAC,KAAK,CAAC;YAC9B,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,IAAI,CAAC,qCAAqC,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,gCAAgC,CAC/B,OAAoD;QAEpD,MAAM,YAAY,GAAG,IAAI,GAAG,EAA8B,CAAC;QAC3D,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;YACrC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,iCAAiC,CAChC,MAAwB;QAExB,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1D,IAAI,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAsC,CAAC;QAC9D,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC9C,MAAM,mBAAmB,GAAG,CAAC,IAAI,CAAC,oCAAoC;YACrE,IAAI,GAAG,EAAE,CAAC,CAAC;QACZ,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,UAAU,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAC5D,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAC1C,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAClC,MAAM,KAAK,GAAG,IAAI,CAAC,+BAA+B,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,KAAK,EAAE,CAAC;gBACX,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC1B,CAAC;QACF,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IACvD,CAAC;IAED,sCAAsC,CACrC,UAAkB,EAClB,QAA8C;QAE9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,OAAO;QACR,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,IAAI,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QACzD,MAAM,mBAAmB,GAAG,CAAC,IAAI,CAAC,oCAAoC;YACrE,IAAI,GAAG,EAAE,CAAC,CAAC;QACZ,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,kBAAkB,GAAG,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC3D,IACC,kBAAkB,KAAK,SAAS;gBAChC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,kBAAkB,EACnD,CAAC;gBACF,SAAS;YACV,CAAC;YACD,QAAQ,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAC/D,IAAI,CAAC,+BAA+B,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACnD,MAAM,KAAK,GAAG,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACZ,SAAS;YACV,CAAC;YACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC;gBACtC,CAAC,CAAC;oBACA,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;oBACtD,UAAU,EAAE,KAAK,CAAC,UAAU;iBAC5B;gBACF,CAAC,CAAC,KAAK,CAAC;YACT,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,KAAK,CAAC;gBACjD,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAClD,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YAC7B,QAAQ,CAAC,mBAAmB,CAC3B,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,GAAG,EACV,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,uBAAuB,EAC9B,iBAAiB,EACjB,MAAM,CAAC,UAAU,CACjB,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,mBAAmB,CACpD,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,GAAG,EACV,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,uBAAuB,EAC9B,iBAAiB,EACjB,MAAM,CAAC,UAAU,CACjB,CAAC;YACF,IAAI,CAAC,+BAA+B,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxD,CAAC;IACF,CAAC;IAED,KAAK,CAAC,6CAA6C,CAClD,UAAkB,EAClB,QAA8C;QAE9C,IAAI,CAAC,sCAAsC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAClE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAEtD,CAAC;QACF,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,IAAI,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QACzD,MAAM,mBAAmB,GAAG,CAAC,IAAI,CAAC,oCAAoC;YACrE,IAAI,GAAG,EAAE,CAAC,CAAC;QACZ,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,kBAAkB,GAAG,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC3D,IACC,kBAAkB,KAAK,SAAS;gBAChC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,kBAAkB,EACnD,CAAC;gBACF,SAAS;YACV,CAAC;YACD,MAAM,QAAQ,GAAG,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC7C,IAAI,QAAQ,EAAE,CAAC;gBACd,MAAM,eAAe,CAAC,GAAG,CACxB,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,CACjD,CAAC;YACH,CAAC;iBAAM,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;gBACnC,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACtC,CAAC;iBAAM,IAAI,eAAe,CAAC,cAAc,EAAE,CAAC;gBAC3C,MAAM,eAAe,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACP,MAAM,eAAe,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YAChD,CAAC;QACF,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,oCAAoC,EAAE,CAAC;QAC5D,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,MAAM,OAAO,CAAC;QACf,CAAC;IACF,CAAC;IAED,yBAAyB,CACxB,UASC,EACD,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC,oCAAoC,EAAE;QAE/E,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;QACF,MAAM,EAAE,uBAAuB,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC;QAChE,MAAM,YAAY,GAAG,6BAA6B,CACjD,UAAU,CAAC,UAAU,EACrB,UAAU,CAAC,YAAY,CACvB,CAAC;QACF,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAEtD,CAAC;QACF,IAAI,iBAA4C,CAAC;QACjD,IAAI,SAAgC,CAAC;QACrC,IAAI,eAAe,CAAC,mDAAmD,EAAE,CAAC;YACzE,SAAS;gBACR,eAAe,CAAC,mDAAmD,CAClE,MAAM,EACN,YAAY,CACZ,CAAC;QACJ,CAAC;aAAM,IAAI,eAAe,CAAC,2CAA2C,EAAE,CAAC;YACxE,SAAS,GAAG,eAAe,CAAC,2CAA2C,CACtE,MAAM,EACN,YAAY,CACZ,CAAC;QACH,CAAC;aAAM,IAAI,eAAe,CAAC,wCAAwC,EAAE,CAAC;YACrE,SAAS,GAAG,eAAe,CAAC,wCAAwC,CACnE,MAAM,EACN,YAAY,EACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CACjB,CAAC;QACH,CAAC;aAAM,IAAI,eAAe,CAAC,kCAAkC,EAAE,CAAC;YAC/D,MAAM,eAAe,GAAG,IAAI,CAAC,kCAAkC,CAC9D,UAAU,CAAC,QAAQ,CACnB,CAAC;YACF,SAAS,GAAG,eAAe,CAAC,kCAAkC,CAC7D,eAAe,EACf,MAAM,EACN,YAAY,EACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CACjB,CAAC;QACH,CAAC;aAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;YACvE,MAAM,eAAe,GAAG,IAAI,CAAC,kCAAkC,CAC9D,UAAU,CAAC,QAAQ,CACnB,CAAC;YACF,SAAS,GAAG,eAAe,CAAC,eAAe,CAC1C,eAAe,EACf,YAAY,CACZ,CAAC;QACH,CAAC;aAAM,CAAC;YACP,MAAM,eAAe,GAAG,IAAI,CAAC,kCAAkC,CAC9D,UAAU,CAAC,QAAQ,CACnB,CAAC;YACF,iBAAiB;gBAChB,YAAY,CAAC,MAAM,KAAK,CAAC;oBACxB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;wBAC1B,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE;wBACtC,CAAC,CAAC;4BACA,KAAK,EAAE,IAAI,EAAE,CACZ,YAAY,CAAC,GAAG,CACf,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,WAAW,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CACjD,CACD;yBACD,CAAC;YACN,IAAI,iBAAiB,IAAI,eAAe,CAAC,YAAY,EAAE,CAAC;gBACvD,SAAS,GAAG,eAAe,CAAC,YAAY,CACvC,eAAe,EACf,iBAAiB,CACjB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YACpE,CAAC;QACF,CAAC;QAED,MAAM,MAAM,GAAG,GAA0B,EAAE;YAC1C,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;YACF,MAAM,kBAAkB,GAAG,6BAA6B,CACvD,UAAU,CAAC,UAAU,EACrB,UAAU,CAAC,YAAY,CACvB,CAAC;YACF,IAAI,UAAU,CAAC,YAAY,KAAK,KAAK,EAAE,CAAC;gBACvC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,sBAAsB,CACvD,UAAU,CAAC,IAAI,EACf,MAAM,CAAC,GAAG,EACV,UAAU,CAAC,WAAW,EACtB,kBAAkB,EAClB,uBAAuB,EACvB,UAAU,CAAC,QAAQ,EACnB,MAAM,CAAC,UAAU,CACjB,CAAC;YACH,CAAC;YACD,IAAI,UAAU,CAAC,oBAAoB,KAAK,KAAK,EAAE,CAAC;gBAC/C,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,sBAAsB,CACjD,UAAU,CAAC,IAAI,EACf,MAAM,CAAC,GAAG,EACV,UAAU,CAAC,WAAW,EACtB,kBAAkB,EAClB,uBAAuB,EACvB,UAAU,CAAC,QAAQ,EACnB,MAAM,CAAC,UAAU,CACjB,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;gBAC1C,IAAI,CAAC,+BAA+B,CAAC,GAAG,CACvC,UAAU,CAAC,IAAI,EACf,UAAU,CAAC,QAAQ,CAAC,eAAe,IAAI,MAAM,CAC7C,CAAC;gBACF,KAAK,MAAM,QAAQ,IAAI,kBAAkB,EAAE,CAAC;oBAC3C,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACvD,CAAC;YACF,CAAC;YAED,KAAK,MAAM,UAAU,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;gBACjD,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC;YAED,IAAI,iBAAiB,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;gBACxD,OAAO,eAAe,CACrB,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAC,EACxD,GAAG,EAAE,CAAC,IAAI,CACV,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC,CAAC;QACF,OAAO,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,0CAA0C,CACzC,UASC,EACD,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC,oCAAoC,EAAE;QAE/E,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;QACF,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC;QACvC,MAAM,SAAS,GACd,UAAU,CAAC,eAAe;aACxB,0DAA0D;YAC5D,UAAU,CAAC,eAAe;iBACxB,mDAAmD,CAAC;QACvD,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACd,CAAC;QACD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAC/B,UAAU,CAAC,eAAe,EAC1B,MAAM,EACN,6BAA6B,CAC5B,UAAU,CAAC,UAAU,EACrB,UAAU,CAAC,YAAY,CACvB,CACD,CAAC;QACF,MAAM,MAAM,GAAG,GAAG,EAAE;YACnB,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;YACF,MAAM,kBAAkB,GAAG,6BAA6B,CACvD,UAAU,CAAC,UAAU,EACrB,UAAU,CAAC,YAAY,CACvB,CAAC;YACF,IAAI,UAAU,CAAC,YAAY,KAAK,KAAK,EAAE,CAAC;gBACvC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,sBAAsB,CACvD,UAAU,CAAC,IAAI,EACf,MAAM,CAAC,GAAG,EACV,UAAU,CAAC,WAAW,EACtB,kBAAkB,EAClB,UAAU,CAAC,QAAQ,CAAC,uBAAuB,EAC3C,UAAU,CAAC,WAAW,CAAC,MAAM,EAC7B,MAAM,CAAC,UAAU,CACjB,CAAC;YACH,CAAC;YACD,IAAI,UAAU,CAAC,oBAAoB,KAAK,KAAK,EAAE,CAAC;gBAC/C,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,sBAAsB,CACjD,UAAU,CAAC,IAAI,EACf,MAAM,CAAC,GAAG,EACV,UAAU,CAAC,WAAW,EACtB,kBAAkB,EAClB,UAAU,CAAC,QAAQ,CAAC,uBAAuB,EAC3C,UAAU,CAAC,WAAW,CAAC,MAAM,EAC7B,MAAM,CAAC,UAAU,CACjB,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;gBAC1C,IAAI,CAAC,+BAA+B,CAAC,GAAG,CACvC,UAAU,CAAC,IAAI,EACf,UAAU,CAAC,QAAQ,CAAC,eAAe,IAAI,MAAM,CAC7C,CAAC;gBACF,KAAK,MAAM,QAAQ,IAAI,kBAAkB,EAAE,CAAC;oBAC3C,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACvD,CAAC;YACF,CAAC;YACD,KAAK,MAAM,UAAU,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;gBACjD,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC,CAAC;QACF,OAAO,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,gDAAgD,CAC/C,UAOC,EACD,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC,oCAAoC,EAAE;QAE/E,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;QACF,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;QAC9B,MAAM,oCAAoC,GACzC,IAAI,CAAC,uCAAuC,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,GAA0B,EAAE;YAC1C,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,sBAAsB,CACvD,UAAU,CAAC,IAAI,EACf,MAAM,CAAC,GAAG,EACV,UAAU,CAAC,WAAW,EACtB,UAAU,CAAC,YAAY,EACvB,MAAM,CAAC,uBAAuB,EAC9B,UAAU,CAAC,WAAW,CAAC,MAAM,EAC7B,MAAM,CAAC,UAAU,CACjB,CAAC;YACF,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;gBAC1C,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAClE,KAAK,MAAM,WAAW,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;oBACnD,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC1D,CAAC;YACF,CAAC;YACD,KAAK,MAAM,UAAU,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;gBACjD,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC;YACD,IAAI,IAAI,CAAC,oCAAoC,EAAE,CAAC;gBAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,4CAA4C,EAAE,CAAC;gBACpE,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC5B,OAAO,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBAC7C,CAAC;YACF,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC,CAAC;QACF,IACC,CAAC,UAAU,CAAC,mCAAmC;YAC9C,IAAI,CAAC,0CAA0C,CAC9C,UAAU,CAAC,eAAe,CAC1B,CAAC;YACH,oCAAoC,EACnC,CAAC;YACF,OAAO,MAAM,EAAE,CAAC;QACjB,CAAC;QAED,MAAM,SAAS,GACd,UAAU,CAAC,eAAe;aACxB,0DAA0D;YAC5D,UAAU,CAAC,eAAe;iBACxB,mDAAmD,CAAC;QACvD,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACd,CAAC;QACD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAC/B,UAAU,CAAC,eAAe,EAC1B,MAAM,EACN,UAAU,CAAC,YAAY,CACvB,CAAC;QACF,OAAO,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,oCAAoC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,oCAAoC,CAAC;QAC9D,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YAC5D,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,IACC,QAAQ,CAAC,8BAA8B,KAAK,CAAC;YAC7C,QAAQ,CAAC,4BAA4B,KAAK,CAAC;YAC3C,QAAQ,CAAC,kCAAkC,KAAK,CAAC,EAChD,CAAC;YACF,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,OAAO,eAAe,CAAC,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE;YAC/D,IAAI,CAAC,2CAA2C,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC9D,OAAO,SAAS,CAAC;QAClB,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,4CAA4C;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,oCAAoC,CAAC;QAC9D,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YAC5D,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,IAAI,WAAW,CAAC,oBAAoB,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,WAAW,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YAC3D,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7B,OAAO,SAAS,CAAC;YAClB,CAAC;YACD,OAAO,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE;gBACpC,OAAO,SAAS,CAAC;YAClB,CAAC,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,kDAAkD,EAAE,EAAE,CAAC;YAChE,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,oCAAoC,EAAE,CAAC;IACpD,CAAC;IAED,kDAAkD;QACjD,MAAM,WAAW,GAAG,IAAI,CAAC,oCAAoC,CAAC;QAC9D,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,aAAa,KAAK,KAAK,EAAE,CAAC;YACzD,OAAO,IAAI,CAAC;QACb,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,8BAA8B,KAAK,CAAC,EAAE,CAAC;YAChE,OAAO,KAAK,CAAC;QACd,CAAC;QACD,IACC,WAAW,CAAC,oBAAoB,IAAI,IAAI;YACxC,QAAQ,CAAC,kCAAkC;gBAC1C,WAAW,CAAC,oBAAoB,EAChC,CAAC;YACF,OAAO,IAAI,CAAC;QACb,CAAC;QACD,OAAO,CACN,WAAW,CAAC,eAAe,IAAI,IAAI;YACnC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,2CAA2C;gBAC5D,WAAW,CAAC,eAAe,CAC5B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,wCAAwC;QAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,oCAAoC,CAAC;QAC9D,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,OAAO;QACR,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YAC/B,2EAA2E;YAC3E,4EAA4E;YAC5E,6EAA6E;YAC7E,0CAA0C;YAC1C,OAAO;QACR,CAAC;QACD,IACC,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE;YACnC,CAAC,IAAI,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAC3C,CAAC;YACF,sEAAsE;YACtE,oEAAoE;YACpE,uEAAuE;YACvE,+DAA+D;YAC/D,MAAM,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,CAAC;YACjD,OAAO;QACR,CAAC;QACD,MAAM,IAAI,CAAC,oCAAoC,EAAE,CAAC;QAClD,MAAM,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC;IAC7B,CAAC;IAED,uCAAuC;QACtC,OAAO,CACN,CAAC,CAAC,IAAI,CAAC,oCAAoC;YAC3C,IAAI,CAAC,IAAI,CAAC,2CAA2C,EAAE,CACvD,CAAC;IACH,CAAC;IAED,2CAA2C;QAC1C,OAAO,CACN,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YAC5B,CAAC,CAAC,IAAI,CAAC,+BAA+B;YACtC,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CACjC,CAAC;IACH,CAAC;IAED,0CAA0C,CACzC,eAAsD;QAEtD,IACC,CAAC,IAAI,CAAC,IAAI,CAAC,2CAA2C,EAAE;YACxD,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CACnC,eAAe,EACf,4DAA4D,CAC5D;YACD,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CACnC,eAAe,EACf,qDAAqD,CACrD,EACA,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QACD,MAAM,SAAS,GACd,eAGA,CAAC,SAAS,EAAE,EAAE,CAAC;QAChB,OAAO,SAAS,KAAK,KAAK,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,iBAAiB,CACtB,UAoBC,EACD,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC,oCAAoC,EAAE;QAE/E,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;QACF,MAAM,QAAQ,GACb,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC,gCAAgC,CAAC,UAAU,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,yBAAyB,CACpC;YACC,QAAQ;YACR,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI;YAC3B,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;YAC/D,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,oBAAoB,EAAE,UAAU,CAAC,oBAAoB;YACrD,YAAY,EAAE,UAAU,CAAC,YAAY;SACrC,EACD,4BAA4B,CAC5B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC5B,KAAsC,EACtC,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC,oCAAoC,EAAE;QAE/E,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;QACF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,CAAC;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACrC,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC;SACtE,CAAC,CAAC,CAAC;QACJ,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAC9B,CACC,KAAK,EAIJ,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,KAAK,CAC7B,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAEtD,CAAC;QACF,MAAM,qBAAqB,GAC1B,OAAO,eAAe,CAAC,QAAQ,KAAK,UAAU;YAC9C,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QAEhE,IACC,eAAe,CAAC,wDAAwD,EACvE,CAAC;YACF,MAAM,eAAe,CAAC,wDAAwD,CAC7E,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;gBACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;aAClC,CAAC,CAAC,CACH,CAAC;QACH,CAAC;aAAM,IACN,eAAe,CAAC,gDAAgD,EAC/D,CAAC;YACF,MAAM,eAAe,CAAC,gDAAgD,CACrE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;gBACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;aAClC,CAAC,CAAC,CACH,CAAC;QACH,CAAC;aAAM,IAAI,eAAe,CAAC,6CAA6C,EAAE,CAAC;YAC1E,MAAM,eAAe,CAAC,6CAA6C,CAClE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;gBACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;gBAC/B,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;aAC9B,CAAC,CAAC,CACH,CAAC;QACH,CAAC;aAAM,IAAI,eAAe,CAAC,wCAAwC,EAAE,CAAC;YACrE,MAAM,eAAe,CAAC,wCAAwC,CAC7D,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;gBACpC,KAAK,EAAE,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC;gBACxD,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;gBAC/B,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;aAC9B,CAAC,CAAC,CACH,CAAC;QACH,CAAC;aAAM,IAAI,qBAAqB,EAAE,CAAC;YAClC,MAAM,eAAe,CAAC,QAAS,CAC9B,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAC5B,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,CACjD,CACD,CAAC;QACH,CAAC;aAAM,CAAC;YACP,MAAM,OAAO,GAAc,EAAE,CAAC;YAC9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBAC1B,OAAO,CAAC,IAAI,CACX,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,4BAA4B,CAAC,CAChE,CAAC;gBACF,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;YACH,CAAC;YACD,OAAO,OAAO,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;QAEF,MAAM,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAC7C,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,KAAK,KAAK,CACzC,CAAC;QACF,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC9D,IAAI,uBAAuB,CAAC,MAAM,GAAG,CAAC,IAAI,oBAAoB,EAAE,CAAC;YAChE,IAAI,oBAAoB,CAAC,2BAA2B,EAAE,CAAC;gBACtD,oBAAoB,CAAC,2BAA2B,CAC/C,uBAAuB,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;oBACpD,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;oBACrB,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG;oBACxB,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;oBAChC,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB;oBACzD,iBAAiB,EAAE,IAAI,CAAC,QAAQ;oBAChC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU;iBACtC,CAAC,CAAC,CACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,KAAK,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,uBAAuB,EAAE,CAAC;oBAC1D,oBAAoB,CAAC,sBAAsB,CAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,QAAQ,CAAC,MAAM,CAAC,GAAG,EACnB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EACpB,QAAQ,CAAC,uBAAuB,EAChC,IAAI,CAAC,QAAQ,EACb,QAAQ,CAAC,MAAM,CAAC,UAAU,CAC1B,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;QAED,MAAM,+BAA+B,GAAG,OAAO,CAAC,MAAM,CACrD,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,KAAK,KAAK,CACjD,CAAC;QACF,MAAM,sBAAsB,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1D,IAAI,+BAA+B,CAAC,MAAM,GAAG,CAAC,IAAI,sBAAsB,EAAE,CAAC;YAC1E,IAAI,sBAAsB,CAAC,2BAA2B,EAAE,CAAC;gBACxD,sBAAsB,CAAC,2BAA2B,CACjD,+BAA+B,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC5D,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;oBACrB,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG;oBACxB,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;oBAChC,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB;oBACzD,iBAAiB,EAAE,IAAI,CAAC,QAAQ;oBAChC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU;iBACtC,CAAC,CAAC,CACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,KAAK,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,+BAA+B,EAAE,CAAC;oBAClE,sBAAsB,CAAC,sBAAsB,CAC5C,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,QAAQ,CAAC,MAAM,CAAC,GAAG,EACnB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EACpB,QAAQ,CAAC,uBAAuB,EAChC,IAAI,CAAC,QAAQ,EACb,QAAQ,CAAC,MAAM,CAAC,UAAU,CAC1B,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;QAED,KAAK,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,OAAO,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;gBAC1C,IAAI,CAAC,+BAA+B,CAAC,GAAG,CACvC,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,QAAQ,CAAC,eAAe,IAAI,QAAQ,CAAC,MAAM,CAC3C,CAAC;gBACF,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC7C,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACvD,CAAC;YACF,CAAC;YACD,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC;QACF,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,GAAG,CAC5B,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CACnD,CAAC;QACF,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,iBAAiB,CACtB,UAA4B,EAC5B,4BAA8C;QAE9C,IAAI,4BAA4B,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,sBAAsB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1E,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,sBAAsB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACpE,IAAI,CAAC,+BAA+B,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9D,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAEtD,CAAC;QACF,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;YAC5B,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,4BAA4B,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,4CAA4C,CACrD,4BAA4B,CAC5B,CAAC;QACH,CAAC;IACF,CAAC;CACD"}
|
package/dist/src/errors.d.ts
CHANGED
package/dist/src/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,iBAAiB,GAAI,GAAG,KAAK,YAczC,CAAC;AAEF,qBAAa,YAAa,SAAQ,KAAK;gBAC1B,KAAK,EAAE,MAAM;CAKzB;AAED;;;;;GAKG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;IAClD,QAAQ,CAAC,mBAAmB,QAAQ;IACpC,QAAQ,CAAC,SAAS,SAAS;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAW;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAW;gBAGxC,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE;QACT,aAAa,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjC,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;KAC9B;CAwCF"}
|
package/dist/src/errors.js
CHANGED
|
@@ -1,3 +1,22 @@
|
|
|
1
|
+
import { NotStartedError as IndexNotStartedError } from "@peerbit/indexer-interface";
|
|
2
|
+
import { ClosedError } from "@peerbit/program";
|
|
3
|
+
import { NotStartedError } from "@peerbit/stream-interface";
|
|
4
|
+
import { AbortError } from "@peerbit/time";
|
|
5
|
+
export const isNotStartedError = (e) => {
|
|
6
|
+
if (e instanceof AbortError) {
|
|
7
|
+
return true;
|
|
8
|
+
}
|
|
9
|
+
if (e instanceof NotStartedError) {
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
if (e instanceof IndexNotStartedError) {
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
if (e instanceof ClosedError) {
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
return false;
|
|
19
|
+
};
|
|
1
20
|
export class NoPeersError extends Error {
|
|
2
21
|
constructor(topic) {
|
|
3
22
|
super(`No peers found for topic ${topic}. Please make sure you are connected to the network and try again.`);
|
package/dist/src/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,YAAa,SAAQ,KAAK;IACtC,YAAY,KAAa;QACxB,KAAK,CACJ,4BAA4B,KAAK,oEAAoE,CACrG,CAAC;IACH,CAAC;CACD;AAED;;;;;GAKG;AACH,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACzC,mBAAmB,GAAG,IAAI,CAAC;IAC3B,SAAS,GAAG,KAAK,CAAC;IAClB,KAAK,CAAU;IACf,aAAa,CAAoB;IACjC,UAAU,CAAoB;IACtB,gBAAgB,CAAW;IAC3B,aAAa,CAAW;IAEzC,YACC,KAAc,EACd,OAGC;QAED,MAAM,aAAa,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,IAAI,aAAa,CAAC,CAAC,CAAC;QAC/D,KAAK,CACJ,yFACC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACtD,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5E,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,gBAAgB,GAAG,aAAa,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;QAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC;IACtC,CAAC;IAED,6EAA6E;IAC7E,gBAAgB,CACf,OAGC,EACD,UAA8C;QAE9C,MAAM,KAAK,GAAG,CACb,MAAgB,EAChB,QAAsC,EAC/B,EAAE;YACT,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,OAAO;YACR,CAAC;YACD,MAAM,MAAM,GAAG,UAAU,EAAE,mBAAmB;gBAC7C,CAAC,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAC;gBAC1B,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC;YAC5B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,CAAC,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAChD,CAAC;CACD"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type EagerBlocksSetting } from "@peerbit/blocks";
|
|
2
2
|
import { PublicSignKey } from "@peerbit/crypto";
|
|
3
|
-
import { type Index } from "@peerbit/indexer-interface";
|
|
3
|
+
import { type DeleteOptions, type IdKey, type Ideable, type Index } from "@peerbit/indexer-interface";
|
|
4
4
|
import { type AppendOptions, type Change, Entry, Log, type LogEvents, type LogProperties, Meta, ShallowEntry, ShallowMeta, type ShallowOrFullEntry } from "@peerbit/log";
|
|
5
5
|
import { Program, type ProgramEvents } from "@peerbit/program";
|
|
6
6
|
import { type FanoutTreeChannelOptions, type FanoutTreeJoinOptions } from "@peerbit/pubsub";
|
|
@@ -14,6 +14,7 @@ import { NativeDurableCommitError, NoPeersError } from "./errors.js";
|
|
|
14
14
|
import { ExchangeHeadsMessage, RawExchangeHeadsMessage, StashBackedRawExchangeHeadsMessage } from "./exchange-heads.js";
|
|
15
15
|
import { MAX_U32, MAX_U64, type NumberFromType, type Numbers } from "./integers.js";
|
|
16
16
|
import { TransportMessage } from "./message.js";
|
|
17
|
+
import { type PeerSession } from "./peer-session.js";
|
|
17
18
|
import { PIDReplicationController } from "./pid.js";
|
|
18
19
|
import { type EntryReplicated, EntryReplicatedU32, EntryReplicatedU64, type ReplicationChange, type ReplicationChanges, ReplicationIntent, type ReplicationRangeIndexable, ReplicationRangeIndexableU32, ReplicationRangeIndexableU64 } from "./ranges.js";
|
|
19
20
|
import { type ReplicationDomainHash, createReplicationDomainHash } from "./replication-domain-hash.js";
|
|
@@ -30,6 +31,9 @@ export { MAX_U32, MAX_U64, type NumberFromType };
|
|
|
30
31
|
export type { SharedLogNativeWireSync, SyncOptions, SyncProfileEvent, SyncProfileFn, } from "./sync/index.js";
|
|
31
32
|
export { ExchangeHeadsMessage, RawExchangeHeadsMessage, StashBackedRawExchangeHeadsMessage, };
|
|
32
33
|
export declare const logger: import("@libp2p/interface").Logger;
|
|
34
|
+
type LeaderMap = Map<string, {
|
|
35
|
+
intersecting: boolean;
|
|
36
|
+
}>;
|
|
33
37
|
type PendingMaturityRecord<R extends "u32" | "u64"> = {
|
|
34
38
|
range: ReplicationChange<ReplicationRangeIndexable<R>>;
|
|
35
39
|
timeout: ReturnType<typeof setTimeout>;
|
|
@@ -38,6 +42,65 @@ type PendingMaturityRecord<R extends "u32" | "u64"> = {
|
|
|
38
42
|
rebalance: boolean;
|
|
39
43
|
ownershipLifecycleController: AbortController;
|
|
40
44
|
};
|
|
45
|
+
export type EntryLeaderPlan<R extends "u32" | "u64"> = {
|
|
46
|
+
coordinates: NumberFromType<R>[];
|
|
47
|
+
coordinateStrings?: string[];
|
|
48
|
+
leaders: LeaderMap;
|
|
49
|
+
isLeader: boolean;
|
|
50
|
+
assignedToRangeBoundary?: boolean;
|
|
51
|
+
};
|
|
52
|
+
export type ReusableReceiveCoordinatePlan<R extends "u32" | "u64"> = {
|
|
53
|
+
plan: EntryLeaderPlan<R>;
|
|
54
|
+
replicas: number;
|
|
55
|
+
prepared: PreparedCoordinatePersistence<R>;
|
|
56
|
+
};
|
|
57
|
+
export type DecodedReplicaCountMap = ReadonlyMap<string, number>;
|
|
58
|
+
export type SharedLogCoordinateNativeFields<R extends "u32" | "u64"> = {
|
|
59
|
+
hash: string;
|
|
60
|
+
hashNumber: NumberFromType<R>;
|
|
61
|
+
hashNumberString?: string;
|
|
62
|
+
gid: string;
|
|
63
|
+
coordinates: NumberFromType<R>[];
|
|
64
|
+
coordinateStrings?: string[];
|
|
65
|
+
wallTime: bigint;
|
|
66
|
+
wallTimeString?: string;
|
|
67
|
+
assignedToRangeBoundary: boolean;
|
|
68
|
+
metaBytes: Uint8Array;
|
|
69
|
+
};
|
|
70
|
+
export type PreparedCoordinatePersistence<R extends "u32" | "u64"> = {
|
|
71
|
+
coordinateEntry?: EntryReplicated<R>;
|
|
72
|
+
assignedToRangeBoundary: boolean;
|
|
73
|
+
fields: SharedLogCoordinateNativeFields<R>;
|
|
74
|
+
};
|
|
75
|
+
export type ResidentCoordinateEntry<R extends "u32" | "u64"> = EntryReplicated<R> | SharedLogCoordinateNativeFields<R>;
|
|
76
|
+
export type CoordinatePersistBatchItem<R extends "u32" | "u64"> = {
|
|
77
|
+
coordinates: NumberFromType<R>[];
|
|
78
|
+
entry: ShallowOrFullEntry<any> | EntryReplicated<R>;
|
|
79
|
+
leaders: LeaderMap | false;
|
|
80
|
+
replicas: number;
|
|
81
|
+
prev?: EntryReplicated<R>;
|
|
82
|
+
assignedToRangeBoundary?: boolean;
|
|
83
|
+
commitNative?: boolean;
|
|
84
|
+
commitNativeBackbone?: boolean;
|
|
85
|
+
hashNumber?: NumberFromType<R>;
|
|
86
|
+
prepared?: PreparedCoordinatePersistence<R>;
|
|
87
|
+
};
|
|
88
|
+
export type NativeBackboneReceiveCoordinateRow<R extends "u32" | "u64"> = {
|
|
89
|
+
item: CoordinatePersistBatchItem<R>;
|
|
90
|
+
prepared: PreparedCoordinatePersistence<R>;
|
|
91
|
+
fields: SharedLogCoordinateNativeFields<R>;
|
|
92
|
+
deleteHashes: string[];
|
|
93
|
+
};
|
|
94
|
+
export type NativeBackboneReceiveCoordinateBatch<R extends "u32" | "u64"> = {
|
|
95
|
+
rows: NativeBackboneReceiveCoordinateRow<R>[];
|
|
96
|
+
rollbackCoordinateEntries?: NativeBackboneCoordinateRollback<R>;
|
|
97
|
+
};
|
|
98
|
+
export type NativeBackboneCoordinateRollback<R extends "u32" | "u64"> = {
|
|
99
|
+
hashes: Set<string>;
|
|
100
|
+
entries: Map<string, ResidentCoordinateEntry<R>>;
|
|
101
|
+
generations: Map<string, number>;
|
|
102
|
+
};
|
|
103
|
+
export type RepairDispatchEntry<R extends "u32" | "u64"> = ResidentCoordinateEntry<R>;
|
|
41
104
|
type NativeBackboneCoordinatePersistenceFiles = {
|
|
42
105
|
snapshot?: string;
|
|
43
106
|
journal?: string;
|
|
@@ -53,7 +116,7 @@ type NativeBackboneCoordinatePersistenceOptions = NativeBackboneCoordinatePersis
|
|
|
53
116
|
compactMaxJournalBytes?: number;
|
|
54
117
|
compactMaxJournalRecords?: number;
|
|
55
118
|
};
|
|
56
|
-
type NativeBackboneCoordinatePersistenceStore = {
|
|
119
|
+
export type NativeBackboneCoordinatePersistenceStore = {
|
|
57
120
|
read(name: string): Promise<Uint8Array | undefined>;
|
|
58
121
|
write(name: string, bytes: Uint8Array): Promise<void>;
|
|
59
122
|
append(name: string, bytes: Uint8Array): Promise<void>;
|
|
@@ -65,7 +128,7 @@ type NativeBackboneCoordinatePersistenceStore = {
|
|
|
65
128
|
flush?: boolean;
|
|
66
129
|
}): Promise<void>;
|
|
67
130
|
};
|
|
68
|
-
type NativeBackboneCoordinatePersistenceAdapter = {
|
|
131
|
+
export type NativeBackboneCoordinatePersistenceAdapter = {
|
|
69
132
|
/** Explicit capability required by durable strict-native operation intents. */
|
|
70
133
|
intentStore?: NativeBackboneCoordinatePersistenceStore;
|
|
71
134
|
flushOnAppend?: boolean;
|
|
@@ -133,7 +196,7 @@ type ExistingReplicationOptions<R extends "u32" | "u64" = any> = {
|
|
|
133
196
|
};
|
|
134
197
|
export type ReplicationOptions<R extends "u32" | "u64" = any> = NewReplicationOptions<R> | ExistingReplicationOptions<R>;
|
|
135
198
|
export { BlocksMessage };
|
|
136
|
-
interface IndexableDomain<R extends "u32" | "u64"> {
|
|
199
|
+
export interface IndexableDomain<R extends "u32" | "u64"> {
|
|
137
200
|
numbers: Numbers<R>;
|
|
138
201
|
constructorEntry: new (properties: {
|
|
139
202
|
coordinates: NumberFromType<R>[];
|
|
@@ -157,6 +220,42 @@ interface IndexableDomain<R extends "u32" | "u64"> {
|
|
|
157
220
|
publicKey: PublicSignKey;
|
|
158
221
|
})) => ReplicationRangeIndexable<R>;
|
|
159
222
|
}
|
|
223
|
+
export type PutAndDeleteIndex<T extends Record<string, any>> = Index<T> & {
|
|
224
|
+
putAndDelete?: (value: T, deleteOptions: DeleteOptions) => Promise<unknown> | unknown;
|
|
225
|
+
putAndDeleteIds?: (value: T, deleteIds: Array<IdKey | Ideable>, id?: IdKey) => Promise<unknown> | unknown;
|
|
226
|
+
delIds?: (deleteIds: Array<IdKey | Ideable>) => Promise<unknown> | unknown;
|
|
227
|
+
delIdsNoReturn?: (deleteIds: Array<IdKey | Ideable>) => Promise<unknown> | unknown;
|
|
228
|
+
putSharedLogCoordinateAndDeleteIds?: (value: T, fields: SharedLogCoordinateNativeFields<any>, deleteIds?: Array<IdKey | Ideable>, id?: IdKey) => Promise<unknown> | unknown;
|
|
229
|
+
putSharedLogCoordinateFieldsAndDeleteIds?: (fields: SharedLogCoordinateNativeFields<any>, deleteIds?: Array<IdKey | Ideable>, id?: IdKey) => Promise<unknown> | unknown;
|
|
230
|
+
putSharedLogCoordinateFieldsAndDeleteHashes?: (fields: SharedLogCoordinateNativeFields<any>, deleteHashes?: string[], id?: IdKey) => Promise<unknown> | unknown;
|
|
231
|
+
putSharedLogCoordinateFieldsAndDeleteHashesNoReturn?: (fields: SharedLogCoordinateNativeFields<any>, deleteHashes?: string[], id?: IdKey) => Promise<unknown> | unknown;
|
|
232
|
+
putSharedLogCoordinateFieldsEncodedAndDeleteHashesNoReturn?: (fields: SharedLogCoordinateNativeFields<any>, deleteHashes?: string[], id?: IdKey) => Promise<unknown> | unknown;
|
|
233
|
+
putSharedLogCoordinatesAndDeleteIdsBatch?: (values: Array<{
|
|
234
|
+
value: T;
|
|
235
|
+
fields: SharedLogCoordinateNativeFields<any>;
|
|
236
|
+
deleteIds?: Array<IdKey | Ideable>;
|
|
237
|
+
id?: IdKey;
|
|
238
|
+
}>) => Promise<unknown> | unknown;
|
|
239
|
+
putSharedLogCoordinateFieldsAndDeleteIdsBatch?: (values: Array<{
|
|
240
|
+
fields: SharedLogCoordinateNativeFields<any>;
|
|
241
|
+
deleteIds?: Array<IdKey | Ideable>;
|
|
242
|
+
id?: IdKey;
|
|
243
|
+
}>) => Promise<unknown> | unknown;
|
|
244
|
+
putSharedLogCoordinateFieldsAndDeleteHashesBatch?: (values: Array<{
|
|
245
|
+
fields: SharedLogCoordinateNativeFields<any>;
|
|
246
|
+
deleteHashes?: string[];
|
|
247
|
+
id?: IdKey;
|
|
248
|
+
}>) => Promise<unknown> | unknown;
|
|
249
|
+
putSharedLogCoordinateFieldsAndDeleteHashesBatchNoReturn?: (values: Array<{
|
|
250
|
+
fields: SharedLogCoordinateNativeFields<any>;
|
|
251
|
+
deleteHashes?: string[];
|
|
252
|
+
id?: IdKey;
|
|
253
|
+
}>) => Promise<unknown> | unknown;
|
|
254
|
+
};
|
|
255
|
+
export type EntryWithMetaBytes = {
|
|
256
|
+
getMetaBytes?: () => Uint8Array | undefined;
|
|
257
|
+
getHashDigestBytes?: () => Uint8Array | undefined;
|
|
258
|
+
};
|
|
160
259
|
export type SharedLogOptions<T, D extends ReplicationDomain<any, T, R>, R extends "u32" | "u64" = D extends ReplicationDomain<any, T, infer I> ? I : "u32"> = {
|
|
161
260
|
appendDurability?: LogProperties<T>["appendDurability"];
|
|
162
261
|
nativeGraph?: LogProperties<T>["nativeGraph"];
|
|
@@ -279,10 +378,8 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
279
378
|
private _nativeDurableRecoveryReadyForReopen;
|
|
280
379
|
private _nativeDurableRecoveryCids;
|
|
281
380
|
private _wireSyncSession?;
|
|
282
|
-
private _nativeBackboneCoordinatePersistence?;
|
|
283
381
|
private _nativeBackboneCoordinatePersistenceStore?;
|
|
284
382
|
private _nativeBackboneDropStarted;
|
|
285
|
-
private _nativeBackboneCoordinateJournalLastFlushMs;
|
|
286
383
|
private _nativeStrictDurableTransactionTail?;
|
|
287
384
|
private _nativeStrictDurableTransactions?;
|
|
288
385
|
private _nativeStrictDurableTransactionJournalState?;
|
|
@@ -290,8 +387,13 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
290
387
|
private _nativeStrictDurableTransactionsClosing;
|
|
291
388
|
private _nativeStrictDurableTransactionFailure?;
|
|
292
389
|
private _defaultAppendReplicaMetadataCache?;
|
|
293
|
-
private
|
|
294
|
-
|
|
390
|
+
private _coordinates;
|
|
391
|
+
get _residentEntryCoordinatesByHash(): Map<string, ResidentCoordinateEntry<R>> | undefined;
|
|
392
|
+
set _residentEntryCoordinatesByHash(value: Map<string, ResidentCoordinateEntry<R>> | undefined);
|
|
393
|
+
get _nativeBackboneCoordinatePersistence(): NativeBackboneCoordinatePersistenceAdapter | undefined;
|
|
394
|
+
set _nativeBackboneCoordinatePersistence(value: NativeBackboneCoordinatePersistenceAdapter | undefined);
|
|
395
|
+
get _nativeBackboneCoordinateJournalLastFlushMs(): number;
|
|
396
|
+
set _nativeBackboneCoordinateJournalLastFlushMs(value: number);
|
|
295
397
|
private coordinateToHash;
|
|
296
398
|
private recentlyRebalanced;
|
|
297
399
|
uniqueReplicators: Set<string>;
|
|
@@ -302,11 +404,8 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
302
404
|
private _onUnsubscriptionFn;
|
|
303
405
|
private _subscriptionChangeCallbacks?;
|
|
304
406
|
private _acceptSubscriptionChangeCallbacks;
|
|
305
|
-
private _replicationLifecycleController?;
|
|
306
407
|
private _activeReceiveHandlersByPeer;
|
|
307
408
|
private _receiveHandlerDrainByPeer;
|
|
308
|
-
private _receiveCleanupGateByPeer;
|
|
309
|
-
private _subscriptionOpeningEpochByPeer;
|
|
310
409
|
private _openingSyncCapabilitiesByPeer;
|
|
311
410
|
private _onFanoutDataFn?;
|
|
312
411
|
private _onFanoutUnicastFn?;
|
|
@@ -322,32 +421,19 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
322
421
|
private _pendingIHaveCallbacks;
|
|
323
422
|
private _pendingIHaveExpiryTimer?;
|
|
324
423
|
private _pendingIHaveExpiryDeadline;
|
|
325
|
-
private get _pendingDeletes();
|
|
326
424
|
private _pendingIHave;
|
|
327
425
|
pendingMaturity: Map<string, Map<string, PendingMaturityRecord<R>>>;
|
|
328
426
|
private latestReplicationInfoMessage;
|
|
329
|
-
private _replicationInfoBlockedPeers;
|
|
330
427
|
private _replicationInfoRequestByPeer;
|
|
331
428
|
private _replicationInfoApplyQueueByPeer;
|
|
332
429
|
private _replicationRangeMutationTail;
|
|
333
430
|
private _replicationRangeMutationsClosing;
|
|
334
|
-
private _checkedPruneRemoveBlocksLocalRangeMutationAdmission;
|
|
335
431
|
private _checkedPruneRemovalCallbackInvocationDepth;
|
|
336
|
-
private _localReplicationRoleGeneration;
|
|
337
432
|
private _replicationRangeMutationFailure?;
|
|
338
|
-
private
|
|
339
|
-
private
|
|
340
|
-
private _receiveOwnershipRevision;
|
|
341
|
-
private _receiveOwnershipMutationAdmissions;
|
|
342
|
-
private _subscriptionEpochByPeer;
|
|
433
|
+
private _instanceLifecycle?;
|
|
434
|
+
private _peerSessions;
|
|
343
435
|
private _pendingReplicatorLeaveByPeer;
|
|
344
|
-
private
|
|
345
|
-
private _replicatorLivenessTimer?;
|
|
346
|
-
private _replicatorLivenessTargets;
|
|
347
|
-
private _replicatorLivenessTargetsSize;
|
|
348
|
-
private _replicatorLivenessCursor;
|
|
349
|
-
private _replicatorLivenessFailures;
|
|
350
|
-
private _replicatorLastActivityAt;
|
|
436
|
+
private _liveness;
|
|
351
437
|
private remoteBlocks;
|
|
352
438
|
private throwIfReplicationOwnershipPoisoned;
|
|
353
439
|
private startRepairLifecycle;
|
|
@@ -383,43 +469,23 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
383
469
|
private oldestOpenTime;
|
|
384
470
|
private keep?;
|
|
385
471
|
private rebalanceParticipationDebounced;
|
|
386
|
-
private
|
|
387
|
-
private _replicationAnnouncementRetryPending;
|
|
388
|
-
private _replicationAnnouncementRetryGeneration;
|
|
389
|
-
private _replicationAnnouncementRetryController;
|
|
390
|
-
private _replicationAnnouncementSendTails?;
|
|
391
|
-
private replicationAnnouncementRepairDebounced;
|
|
392
|
-
private _replicationAnnouncementRepairPending;
|
|
393
|
-
private _replicationAnnouncementRepairGeneration;
|
|
394
|
-
private _replicationAnnouncementRepairGenerationController;
|
|
395
|
-
private _replicationAnnouncementRepairTargets;
|
|
396
|
-
private _replicationAnnouncementRepairCohortSelected;
|
|
397
|
-
private _replicationAnnouncementRepairFairCursorHash;
|
|
398
|
-
private _replicationAnnouncementRepairMaxAttempts;
|
|
399
|
-
private _replicationAnnouncementRepairController;
|
|
472
|
+
private _announcements;
|
|
400
473
|
pruneDebouncedFn: DebouncedAccumulatorMap<{
|
|
401
474
|
entry: CheckedPruneEntry<T, R>;
|
|
402
475
|
leaders: CheckedPruneLeaderMap;
|
|
403
476
|
workToken?: object;
|
|
404
477
|
}>;
|
|
405
478
|
private _checkedPruneAuditTimer?;
|
|
406
|
-
private get _requestIPruneSent();
|
|
407
|
-
private get _requestIPruneResponseReplicatorSet();
|
|
408
|
-
private get _checkedPruneRetries();
|
|
409
479
|
private replicationChangeDebounceFn;
|
|
410
480
|
private _repairRetryTimers;
|
|
411
481
|
private _recentRepairDispatch;
|
|
412
482
|
private _repairSweepRunning;
|
|
413
483
|
private _repairSweepPendingModes;
|
|
414
484
|
private _repairSweepPendingPeersByMode;
|
|
415
|
-
private _repairSweepJoinWarmupGenerationByTarget;
|
|
416
485
|
private _repairFrontierByMode;
|
|
417
486
|
private _repairFrontierActiveTargetsByMode;
|
|
418
487
|
private _repairFrontierBypassKnownPeersByMode;
|
|
419
|
-
private
|
|
420
|
-
private _joinWarmupSendStateByTarget;
|
|
421
|
-
private _joinWarmupRetryTimersByTarget;
|
|
422
|
-
private _joinWarmupScheduledRetriesByTarget;
|
|
488
|
+
private joinWarmup;
|
|
423
489
|
private _repairSweepOptimisticGidPeersPending;
|
|
424
490
|
private _repairSweepOptimisticGidsByPeer;
|
|
425
491
|
private _entryKnownPeers;
|
|
@@ -432,6 +498,7 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
432
498
|
private _repairMetrics;
|
|
433
499
|
private _topicSubscribersCache;
|
|
434
500
|
private _leaderSelectionContextCache?;
|
|
501
|
+
private _leaderPlanCache;
|
|
435
502
|
private _peerSyncCapabilities;
|
|
436
503
|
private _liveRawGossipBatches;
|
|
437
504
|
private _liveRawGossipFlushScheduled;
|
|
@@ -456,9 +523,15 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
456
523
|
domain: D;
|
|
457
524
|
indexableDomain: IndexableDomain<R>;
|
|
458
525
|
interval: any;
|
|
526
|
+
private createJoinWarmupCoordinator;
|
|
527
|
+
private createReplicationAnnouncementCoordinator;
|
|
528
|
+
private createReplicatorLivenessMonitor;
|
|
529
|
+
private createPeerSessionRegistry;
|
|
530
|
+
private createInstanceLifecycle;
|
|
459
531
|
constructor(properties?: {
|
|
460
532
|
id?: Uint8Array;
|
|
461
533
|
});
|
|
534
|
+
private createCoordinatePersistenceCoordinator;
|
|
462
535
|
private ensureNativeDurabilityRuntimeState;
|
|
463
536
|
get compatibility(): number | undefined;
|
|
464
537
|
get isAdaptiveReplicating(): boolean;
|
|
@@ -512,6 +585,14 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
512
585
|
private invalidateTopicSubscribersCache;
|
|
513
586
|
private invalidateSharedLogTopicSubscribersCache;
|
|
514
587
|
private invalidateLeaderSelectionContextCache;
|
|
588
|
+
/**
|
|
589
|
+
* Cache key for a leader-plan lookup, or undefined when the call is
|
|
590
|
+
* uncacheable: explicit freshness demands, per-call candidate filters,
|
|
591
|
+
* roleAge outside the two hot buckets (dynamic default and 0), or an
|
|
592
|
+
* in-flight replication-range mutation window (a plan observed
|
|
593
|
+
* mid-transition must not outlive the transition).
|
|
594
|
+
*/
|
|
595
|
+
private leaderPlanCacheBucket;
|
|
515
596
|
private isReceiveOwnershipSnapshotStable;
|
|
516
597
|
private canCacheLeaderSelectionContext;
|
|
517
598
|
private cloneLeaderSelectionContext;
|
|
@@ -524,38 +605,19 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
524
605
|
private runSubscriptionChangeCallback;
|
|
525
606
|
private stopSubscriptionChangeCallbackAdmission;
|
|
526
607
|
private drainSubscriptionChangeCallbacks;
|
|
527
|
-
private isPeerReceiveAdmissionOpen;
|
|
528
608
|
private acquirePeerReceiveLease;
|
|
529
609
|
private drainPeerReceiveHandlers;
|
|
530
610
|
private drainReceiveHandlers;
|
|
531
611
|
private runPendingIHaveCallback;
|
|
532
612
|
private drainPendingIHaveCallbacks;
|
|
533
|
-
private blockPeerReceiveAdmission;
|
|
534
|
-
private unblockPeerReceiveAdmission;
|
|
535
613
|
private handleReplicationLifecycleSendError;
|
|
536
614
|
isReplicating(): Promise<boolean>;
|
|
537
615
|
private knownSelfReplicating;
|
|
538
616
|
private setupRebalanceDebounceFunction;
|
|
539
|
-
private queueCurrentReplicationStateAnnouncementRetry;
|
|
540
617
|
private onRebalanceParticipationError;
|
|
541
|
-
private setupReplicationAnnouncementRetryFunction;
|
|
542
|
-
private setupReplicationAnnouncementRepairFunction;
|
|
543
|
-
private cancelCurrentReplicationStateAnnouncementRepair;
|
|
544
|
-
private advanceCurrentReplicationStateAnnouncementRepairGeneration;
|
|
545
|
-
private queueCurrentReplicationStateAnnouncementRepair;
|
|
546
|
-
private runCurrentReplicationStateAnnouncementRepair;
|
|
547
|
-
private repairCurrentReplicationStateAnnouncement;
|
|
548
|
-
private cancelCurrentReplicationStateAnnouncementRetry;
|
|
549
|
-
private sendReplicationAnnouncement;
|
|
550
|
-
private retryCurrentReplicationStateAnnouncement;
|
|
551
618
|
private markLocalAppendActivity;
|
|
552
619
|
private shouldDelayAdaptiveRebalance;
|
|
553
620
|
private shouldDeferHeadCoordinatePersistence;
|
|
554
|
-
private deleteCoordinatesForHashes;
|
|
555
|
-
private forgetCoordinateStateForHashes;
|
|
556
|
-
private forgetCoordinateStateForHashValues;
|
|
557
|
-
private forgetResidentCoordinateStateForHashes;
|
|
558
|
-
private forgetResidentCoordinateStateForHashValues;
|
|
559
621
|
private ensureCurrentHeadCoordinatesIndexed;
|
|
560
622
|
private _replicate;
|
|
561
623
|
setupDebouncedRebalancing(options?: DynamicReplicationOptions<R>): void;
|
|
@@ -607,22 +669,11 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
607
669
|
private sleepTracked;
|
|
608
670
|
private queueRepairFrontierEntries;
|
|
609
671
|
private clearRepairFrontierHashes;
|
|
610
|
-
private getJoinWarmupGeneration;
|
|
611
|
-
private trackJoinWarmupTimer;
|
|
612
|
-
private untrackJoinWarmupTimer;
|
|
613
|
-
private cancelJoinWarmupTimers;
|
|
614
|
-
private cancelJoinWarmupTarget;
|
|
615
|
-
private cancelAllJoinWarmupTargets;
|
|
616
|
-
private sleepJoinWarmupTracked;
|
|
617
|
-
private scheduleJoinWarmupRetries;
|
|
618
|
-
private armJoinWarmupRetrySlot;
|
|
619
672
|
private getFullReplicaRepairCandidates;
|
|
620
673
|
private removeRepairFrontierTarget;
|
|
621
674
|
private sendRepairConfirmation;
|
|
622
675
|
private pushRepairEntries;
|
|
623
676
|
private sendRepairEntriesWithTransport;
|
|
624
|
-
private queueJoinWarmupSend;
|
|
625
|
-
private drainJoinWarmupSends;
|
|
626
677
|
private sendMaybeMissingEntriesNow;
|
|
627
678
|
private ensureRepairFrontierRunner;
|
|
628
679
|
private flushAppendBackfill;
|
|
@@ -635,7 +686,6 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
635
686
|
private deleteQueuedCheckedPrune;
|
|
636
687
|
private cancelCheckedPruneForLocalLeader;
|
|
637
688
|
private rearmCheckedPruneAfterTemporaryReceive;
|
|
638
|
-
private hasActiveCheckedPruneWork;
|
|
639
689
|
private revalidateCheckedPruneGrantLocalLeaders;
|
|
640
690
|
private revalidateCheckedPruneOwnership;
|
|
641
691
|
private prunePromotedCheckedPruneParents;
|
|
@@ -644,7 +694,6 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
644
694
|
private pruneCurrentHeadsNoLongerLed;
|
|
645
695
|
private pruneHeadEntriesFromNativeHeadFacts;
|
|
646
696
|
private checkedPruneLeadersToMap;
|
|
647
|
-
private clearCheckedPruneRetry;
|
|
648
697
|
private clearCheckedPruneAuditTimer;
|
|
649
698
|
private scheduleCheckedPruneAudit;
|
|
650
699
|
private scheduleCheckedPruneRetry;
|
|
@@ -729,21 +778,11 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
729
778
|
afterOpen(): Promise<void>;
|
|
730
779
|
reset(): Promise<void>;
|
|
731
780
|
pruneOfflineReplicators(): Promise<any[] | undefined>;
|
|
732
|
-
private startReplicatorLivenessSweep;
|
|
733
|
-
private stopReplicatorLivenessSweep;
|
|
734
|
-
private rebuildReplicatorLivenessTargets;
|
|
735
|
-
private getReplicatorLivenessTargets;
|
|
736
781
|
private cleanupCheckedPrunePeer;
|
|
737
782
|
private cleanupPeerDisconnectTracking;
|
|
738
783
|
private cleanupPendingIHavePeer;
|
|
739
|
-
private markReplicatorActivity;
|
|
740
|
-
private hasRecentReplicatorActivity;
|
|
741
784
|
private advanceReplicationInfoRecoveryEpoch;
|
|
742
|
-
private evictReplicatorFromLiveness;
|
|
743
785
|
private resolveCandidatePeersForHash;
|
|
744
|
-
private runReplicatorLivenessSweep;
|
|
745
|
-
private probeReplicatorLiveness;
|
|
746
|
-
private confirmReplicatorSubscriberPresence;
|
|
747
786
|
getMemoryUsage(): Promise<number>;
|
|
748
787
|
/** Return a detached snapshot of effective shared-log runtime settings. */
|
|
749
788
|
getRuntimeSnapshot(): SharedLogRuntimeSnapshot;
|
|
@@ -798,6 +837,11 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
798
837
|
*/
|
|
799
838
|
private resolveStashedRawExchangeHeadsMessage;
|
|
800
839
|
onMessage(msg: TransportMessage, context: RequestContext): Promise<void>;
|
|
840
|
+
private handleRequestIPruneV2;
|
|
841
|
+
private handleResponseIPruneV2;
|
|
842
|
+
private handleRequestReplicationInfo;
|
|
843
|
+
private handleReplicationInfoAnnouncement;
|
|
844
|
+
private handleStoppedReplicating;
|
|
801
845
|
calculateTotalParticipation(options?: {
|
|
802
846
|
sum?: boolean;
|
|
803
847
|
}): Promise<number>;
|
|
@@ -849,39 +893,6 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
849
893
|
private _waitForGidReplicators;
|
|
850
894
|
private waitForLeaderSelection;
|
|
851
895
|
createCoordinates(entry: ShallowOrFullEntry<any> | EntryReplicated<R> | NumberFromType<R>, minReplicas: number): Promise<NumberFromType<R>[]>;
|
|
852
|
-
private getCoordinates;
|
|
853
|
-
private getNativeLogEntryMetadataBatch;
|
|
854
|
-
private createReusableReceiveCoordinatePlans;
|
|
855
|
-
private createBackboneOnlyReceiveCoordinateBatch;
|
|
856
|
-
private nativeBackboneReceiveCoordinateRowsToColumns;
|
|
857
|
-
private finishBackboneOnlyReceiveCoordinateBatch;
|
|
858
|
-
private rollbackBackboneOnlyReceiveCoordinateBatch;
|
|
859
|
-
private persistBackboneOnlyReceiveCoordinateBatch;
|
|
860
|
-
private emitNativeBackboneRawCommitProfile;
|
|
861
|
-
private createNativeBackbonePreparedJoinCommit;
|
|
862
|
-
private createCoordinatePersistenceEntryFromLeaderPlan;
|
|
863
|
-
private createCoordinatePersistenceEntry;
|
|
864
|
-
private createCoordinatePersistenceEntryFromNativePlan;
|
|
865
|
-
private createCoordinateEntryFromNativeFields;
|
|
866
|
-
private materializePreparedCoordinateEntry;
|
|
867
|
-
private materializeResidentCoordinateEntry;
|
|
868
|
-
private materializeRepairDispatchEntries;
|
|
869
|
-
private snapshotResidentCoordinateEntries;
|
|
870
|
-
private rollbackNativeBackboneCoordinateAppend;
|
|
871
|
-
private rollbackNativeBackboneCoordinateAppendDurably;
|
|
872
|
-
private persistPreparedCoordinate;
|
|
873
|
-
private persistPreparedCoordinateNativeTransaction;
|
|
874
|
-
private persistBackboneCoordinateFieldsNativeTransaction;
|
|
875
|
-
private flushNativeBackboneCoordinateJournal;
|
|
876
|
-
private flushNativeBackboneCoordinateJournalOnAppend;
|
|
877
|
-
private shouldFlushNativeBackboneCoordinateJournalOnAppend;
|
|
878
|
-
private closeNativeBackboneCoordinatePersistence;
|
|
879
|
-
private canUseBackboneOnlyCoordinatePersistence;
|
|
880
|
-
private canUseNativeBackboneResidentCoordinateState;
|
|
881
|
-
private canUseRuntimeOnlyNativeBackboneCoordinates;
|
|
882
|
-
private persistCoordinate;
|
|
883
|
-
private persistCoordinatesBatch;
|
|
884
|
-
private deleteCoordinates;
|
|
885
896
|
getDefaultMinRoleAge(): Promise<number>;
|
|
886
897
|
findLeaders(cursors: NumberFromType<R>[], entry: Entry<T> | EntryReplicated<R> | ShallowEntry, options?: {
|
|
887
898
|
roleAge?: number;
|
|
@@ -919,6 +930,7 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
919
930
|
private createLeaderSelectionContext;
|
|
920
931
|
private createNativeLeaderOptions;
|
|
921
932
|
private _findLeaders;
|
|
933
|
+
private _findLeadersUncached;
|
|
922
934
|
private includeIndexedLeaderCandidatesWhenUnderfilled;
|
|
923
935
|
private findFullReplicaLeaders;
|
|
924
936
|
private findEntryReplicatedLeaderBatch;
|
|
@@ -926,10 +938,12 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
926
938
|
private planResidentRepairDispatchBatch;
|
|
927
939
|
private planRepairDispatchBatch;
|
|
928
940
|
private _findLeadersFromHashGid;
|
|
941
|
+
private _findLeadersFromHashGidUncached;
|
|
929
942
|
private _findLeaderPlanFromHashGid;
|
|
930
943
|
private _findEntryAssignmentPlanFromHashGid;
|
|
931
944
|
findLeadersFromEntry(entry: ShallowOrFullEntry<any> | EntryReplicated<R>, replicas: number, options?: {
|
|
932
945
|
roleAge?: number;
|
|
946
|
+
freshLeaderPlan?: boolean;
|
|
933
947
|
}, ownershipLifecycleController?: AbortController): Promise<Map<string, {
|
|
934
948
|
intersecting: boolean;
|
|
935
949
|
}>>;
|
|
@@ -957,18 +971,10 @@ export declare class SharedLog<T, D extends ReplicationDomain<any, T, R> = any,
|
|
|
957
971
|
* This method must run inside the global replication-range mutation lane.
|
|
958
972
|
*/
|
|
959
973
|
private deleteReplicationRangesCoherently;
|
|
960
|
-
private advanceReplicationInfoReceiveEpoch;
|
|
961
|
-
private getReplicationInfoReceiveEpoch;
|
|
962
|
-
private isCurrentReplicationInfoReceiveEpoch;
|
|
963
|
-
private advanceSubscriptionEpoch;
|
|
964
|
-
private getSubscriptionEpoch;
|
|
965
|
-
private isCurrentSubscriptionEpoch;
|
|
966
974
|
private cancelReplicationInfoRequests;
|
|
967
975
|
private scheduleReplicationInfoRequests;
|
|
968
|
-
handleSubscriptionChange(publicKey: PublicSignKey, topics: string[], subscribed: boolean, subscriptionEpoch?:
|
|
976
|
+
handleSubscriptionChange(publicKey: PublicSignKey, topics: string[], subscribed: boolean, subscriptionEpoch?: PeerSession): Promise<void>;
|
|
969
977
|
private getClampedReplicas;
|
|
970
|
-
private removePruneRequestSent;
|
|
971
|
-
private removePruneRequestsSent;
|
|
972
978
|
private sendCheckedPruneResponse;
|
|
973
979
|
private admitAndSendCheckedPruneGrants;
|
|
974
980
|
prune(entries: Map<string, {
|