@peerbit/shared-log 9.2.13 → 10.0.0-05f4bef
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/benchmark/get-samples.js +190 -64
- package/dist/benchmark/get-samples.js.map +1 -1
- package/dist/benchmark/index.js +16 -38
- package/dist/benchmark/index.js.map +1 -1
- package/dist/benchmark/memory/child.js.map +1 -1
- package/dist/benchmark/partial-sync.d.ts +3 -0
- package/dist/benchmark/partial-sync.d.ts.map +1 -0
- package/dist/benchmark/partial-sync.js +121 -0
- package/dist/benchmark/partial-sync.js.map +1 -0
- package/dist/benchmark/replication-prune.js.map +1 -1
- package/dist/benchmark/replication.js.map +1 -1
- package/dist/benchmark/to-rebalance.d.ts +2 -0
- package/dist/benchmark/to-rebalance.d.ts.map +1 -0
- package/dist/benchmark/to-rebalance.js +117 -0
- package/dist/benchmark/to-rebalance.js.map +1 -0
- package/dist/benchmark/utils.d.ts +24 -0
- package/dist/benchmark/utils.d.ts.map +1 -0
- package/dist/benchmark/utils.js +47 -0
- package/dist/benchmark/utils.js.map +1 -0
- package/dist/src/debounce.d.ts +2 -2
- package/dist/src/debounce.d.ts.map +1 -1
- package/dist/src/debounce.js +17 -47
- package/dist/src/debounce.js.map +1 -1
- package/dist/src/exchange-heads.d.ts +1 -13
- package/dist/src/exchange-heads.d.ts.map +1 -1
- package/dist/src/exchange-heads.js +0 -32
- package/dist/src/exchange-heads.js.map +1 -1
- package/dist/src/index.d.ts +119 -60
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1116 -762
- package/dist/src/index.js.map +1 -1
- package/dist/src/integers.d.ts +22 -0
- package/dist/src/integers.d.ts.map +1 -0
- package/dist/src/integers.js +76 -0
- package/dist/src/integers.js.map +1 -0
- package/dist/src/pid.d.ts.map +1 -1
- package/dist/src/pid.js +22 -22
- package/dist/src/pid.js.map +1 -1
- package/dist/src/ranges.d.ts +168 -38
- package/dist/src/ranges.d.ts.map +1 -1
- package/dist/src/ranges.js +869 -272
- package/dist/src/ranges.js.map +1 -1
- package/dist/src/replication-domain-hash.d.ts +2 -3
- package/dist/src/replication-domain-hash.d.ts.map +1 -1
- package/dist/src/replication-domain-hash.js +40 -15
- package/dist/src/replication-domain-hash.js.map +1 -1
- package/dist/src/replication-domain-time.d.ts +5 -5
- package/dist/src/replication-domain-time.d.ts.map +1 -1
- package/dist/src/replication-domain-time.js +2 -0
- package/dist/src/replication-domain-time.js.map +1 -1
- package/dist/src/replication-domain.d.ts +17 -19
- package/dist/src/replication-domain.d.ts.map +1 -1
- package/dist/src/replication-domain.js +2 -6
- package/dist/src/replication-domain.js.map +1 -1
- package/dist/src/replication.d.ts +6 -6
- package/dist/src/replication.d.ts.map +1 -1
- package/dist/src/replication.js +4 -4
- package/dist/src/replication.js.map +1 -1
- package/dist/src/role.d.ts +3 -6
- package/dist/src/role.d.ts.map +1 -1
- package/dist/src/role.js +4 -5
- package/dist/src/role.js.map +1 -1
- package/dist/src/sync/index.d.ts +40 -0
- package/dist/src/sync/index.d.ts.map +1 -0
- package/dist/src/sync/index.js +2 -0
- package/dist/src/sync/index.js.map +1 -0
- package/dist/src/sync/rateless-iblt.d.ts +124 -0
- package/dist/src/sync/rateless-iblt.d.ts.map +1 -0
- package/dist/src/sync/rateless-iblt.js +495 -0
- package/dist/src/sync/rateless-iblt.js.map +1 -0
- package/dist/src/sync/simple.d.ts +69 -0
- package/dist/src/sync/simple.d.ts.map +1 -0
- package/dist/src/sync/simple.js +338 -0
- package/dist/src/sync/simple.js.map +1 -0
- package/dist/src/sync/wasm-init.browser.d.ts +1 -0
- package/dist/src/sync/wasm-init.browser.d.ts.map +1 -0
- package/dist/src/sync/wasm-init.browser.js +3 -0
- package/dist/src/sync/wasm-init.browser.js.map +1 -0
- package/dist/src/sync/wasm-init.d.ts +2 -0
- package/dist/src/sync/wasm-init.d.ts.map +1 -0
- package/dist/src/sync/wasm-init.js +13 -0
- package/dist/src/sync/wasm-init.js.map +1 -0
- package/dist/src/utils.d.ts +3 -3
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +2 -2
- package/dist/src/utils.js.map +1 -1
- package/package.json +73 -69
- package/src/debounce.ts +16 -51
- package/src/exchange-heads.ts +1 -23
- package/src/index.ts +1532 -1038
- package/src/integers.ts +102 -0
- package/src/pid.ts +23 -22
- package/src/ranges.ts +1204 -413
- package/src/replication-domain-hash.ts +43 -18
- package/src/replication-domain-time.ts +9 -9
- package/src/replication-domain.ts +21 -31
- package/src/replication.ts +10 -9
- package/src/role.ts +4 -6
- package/src/sync/index.ts +51 -0
- package/src/sync/rateless-iblt.ts +617 -0
- package/src/sync/simple.ts +403 -0
- package/src/sync/wasm-init.browser.ts +1 -0
- package/src/sync/wasm-init.ts +14 -0
- package/src/utils.ts +10 -4
package/dist/src/ranges.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ranges.js","sourceRoot":"","sources":["../../src/ranges.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ranges.js","sourceRoot":"","sources":["../../src/ranges.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EACN,aAAa,EACb,MAAM,EACN,WAAW,EACX,gBAAgB,EAChB,QAAQ,GACR,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,GAAG,EACH,SAAS,EACT,cAAc,EACd,OAAO,EAKP,cAAc,EACd,GAAG,EACH,EAAE,EAIF,IAAI,EACJ,aAAa,EACb,WAAW;AACX,wBAAwB;EACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACN,OAAO,EACP,OAAO,GAGP,MAAM,eAAe,CAAC;AACvB,OAAO,EAA2B,MAAM,yBAAyB,CAAC;AAElE,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC5B,mEAAa,CAAA;IACb,6DAAU,CAAA;AACX,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B;AAED,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACrB,mDAAY,CAAA;IACZ,+CAAU,CAAA;AACX,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB;AAED,MAAM,GAAG,GAAG,CAAC,CAAkB,EAAE,CAAkB,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAExE,MAAM,6BAA6B,GAAG,CACrC,MAAS,EACT,MAAS,EACT,IAAO,EACP,GAAM,EACa,EAAE;IACrB,IAAI,MAAM,GAAG,MAAM,CAAC;IACpB,aAAa;IACb,IAAI,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC,+FAA+F;IACnI,IAAI,IAAI,GAAM,GAAG,CAAC,YAAY,EAAE,GAAG,CAAM,CAAC;IAC1C,OAAO;QACN,CAAC,MAAM,EAAE,IAAI,CAAC;QACd,4CAA4C;QAC5C,aAAa;QACb,YAAY,GAAG,GAAG;YACjB,CAAC,CAAC,4CAA4C;gBAC7C,aAAa;gBACb,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;YAC1D,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC;KACjB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC3C,OAOQ,EACR,WAAmB,EAClB,EAAE;IACH,IAAI,uBAAuB,GAAG,OAAO,KAAK,KAAK,IAAI,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC;IAC9E,IAAI,CAAC,uBAAuB,IAAI,OAAO,EAAE,CAAC;QACzC,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;YAClC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;gBACzB,uBAAuB,GAAG,IAAI,CAAC;gBAC/B,MAAM;YACP,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,uBAAuB,CAAC;AAChC,CAAC,CAAC;AAUF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAM,EAA6B,EAAE;IACtE,OAAO,CAAC,YAAY,kBAAkB,IAAI,CAAC,YAAY,kBAAkB,CAAC;AAC3E,CAAC,CAAC;AAEF,MAAM,OAAO,kBAAkB;IAE9B,IAAI,CAAS;IAGb,GAAG,CAAS;IAGZ,WAAW,CAAW;IAGtB,QAAQ,CAAS;IAGjB,uBAAuB,CAAU;IAGzB,KAAK,CAAa;IAElB,aAAa,CAAc;IAEnC,YAAY,UAKX;QACA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;QACzD,MAAM,OAAO,GACZ,UAAU,CAAC,IAAI,YAAY,IAAI;YAC9B,CAAC,CAAC,IAAI,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC;YAClC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC;QACrC,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC,uBAAuB,CAAC;IACnE,CAAC;IAED,IAAI,IAAI;QACP,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AA7CA;IADC,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;;gDACV;AAGb;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;;+CACd;AAGZ;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;;uDACN;AAGtB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;oDACN;AAGjB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;mEACS;AAGzB;IADP,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;8BACb,UAAU;iDAAC;AAgC3B,MAAM,OAAO,kBAAkB;IAE9B,IAAI,CAAS;IAGb,GAAG,CAAS;IAGZ,WAAW,CAAW;IAGtB,QAAQ,CAAS;IAGjB,uBAAuB,CAAU;IAGzB,KAAK,CAAa;IAElB,aAAa,CAAc;IAEnC,YAAY,UAKX;QACA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;QACzD,MAAM,OAAO,GACZ,UAAU,CAAC,IAAI,YAAY,IAAI;YAC9B,CAAC,CAAC,IAAI,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC;YAClC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC;QACrC,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC,uBAAuB,CAAC;IACnE,CAAC;IAED,IAAI,IAAI;QACP,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AA7CA;IADC,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;;gDACV;AAGb;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;;+CACd;AAGZ;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;;uDACN;AAGtB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;oDACN;AAGjB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;mEACS;AAGzB;IADP,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;8BACb,UAAU;iDAAC;AAyC3B,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACxC,CAAM,EAC8B,EAAE;IACtC,OAAO,CAAC,YAAY,uBAAuB,CAAC;AAC7C,CAAC,CAAC;AAEF,MAAM,OAAgB,uBAAuB;CAA4B;AAGlE,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,uBAA8B;IAE7E,EAAE,CAAa;IAGf,SAAS,CAAS;IAGV,OAAO,CAAS;IAGhB,OAAO,CAAS;IAGxB,IAAI,CAAoB;IAExB,YAAY,UAMX;QACA,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;QAC3D,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,2BAA2B,CAC1B,GAAkB;QAElB,OAAO,IAAI,4BAA4B,CAAC;YACvC,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,aAAa,EAAE,GAAG,CAAC,QAAQ,EAAE;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;SACf,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AAlDA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;8BACxB,UAAU;sDAAC;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;6DACL;AAGV;IADP,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;2DACC;AAGhB;IADP,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;2DACC;AAGxB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;wDACE;AAdZ,0BAA0B;IADtC,OAAO,CAAC,CAAC,CAAC;;GACE,0BAA0B,CAoDtC;;AAGM,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,uBAA8B;IAE7E,EAAE,CAAa;IAGf,SAAS,CAAS;IAGV,OAAO,CAAS;IAGhB,OAAO,CAAS;IAGxB,IAAI,CAAoB;IAExB,YAAY,UAMX;QACA,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;QAC3D,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,2BAA2B,CAC1B,GAAkB;QAElB,OAAO,IAAI,4BAA4B,CAAC;YACvC,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,aAAa,EAAE,GAAG,CAAC,QAAQ,EAAE;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;SACf,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AAlDA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;8BACxB,UAAU;sDAAC;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;6DACL;AAGV;IADP,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;2DACC;AAGhB;IADP,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;2DACC;AAGxB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;wDACE;AAdZ,0BAA0B;IADtC,OAAO,CAAC,CAAC,CAAC;;GACE,0BAA0B,CAoDtC;;AAED,MAAM,kBAAkB;IAEvB,MAAM,CAAU;IAGhB,IAAI,CAAU;IAGd,MAAM,CAAU;IAGhB,IAAI,CAAU;IAGd,IAAI,CAAoB;IAExB,YAAY,UAMX;QACA,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAC7B,CAAC;CACD;AA3BA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;kDACP;AAGhB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;gDACT;AAGd;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;kDACP;AAGhB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;gDACT;AAGd;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;gDACE;AAiBzB,MAAM,kBAAkB;IAEvB,MAAM,CAAU;IAGhB,IAAI,CAAU;IAGd,MAAM,CAAU;IAGhB,IAAI,CAAU;IAGd,IAAI,CAAoB;IAExB,YAAY,UAMX;QACA,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAC7B,CAAC;CACD;AA3BA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;kDACP;AAGhB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;gDACT;AAGd;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;kDACP;AAGhB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;gDACT;AAGd;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;gDACE;AAqCzB,MAAM,OAAO,4BAA4B;IAIxC,EAAE,CAAa;IAGf,IAAI,CAAS;IAGb,SAAS,CAAS;IAGlB,MAAM,CAAU;IAGhB,IAAI,CAAU;IAGd,MAAM,CAAU;IAGhB,IAAI,CAAU;IAGd,KAAK,CAAU;IAGf,IAAI,CAAoB;IAExB,YACC,UAM8D;QAE9D,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI;YACP,UAAwC,CAAC,aAAa;gBACtD,UAA2C,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QACnE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAEzE,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,iBAAiB,CAAC,SAAS,CAAC;QAC3D,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAEO,SAAS,CAAC,UAA8C;QAC/D,MAAM,MAAM,GAAG,6BAA6B,CAC3C,UAAU,CAAC,MAAM,EACjB,UAAU,CAAC,MAAM,EACjB,CAAC,EACD,OAAO,CACP,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAErC,IAAI,CAAC,KAAK;YACT,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,MAAM;gBACX,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvD,IACC,IAAI,CAAC,MAAM,GAAG,OAAO;YACrB,IAAI,CAAC,IAAI,GAAG,OAAO;YACnB,IAAI,CAAC,MAAM,GAAG,OAAO;YACrB,IAAI,CAAC,IAAI,GAAG,OAAO;YACnB,IAAI,CAAC,KAAK,GAAG,OAAO;YACpB,IAAI,CAAC,KAAK,GAAG,CAAC,EACb,CAAC;YACF,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACrD,CAAC;IACF,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,QAAQ,CAAC,KAAa;QACrB,OAAO,CACN,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;YAC3C,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAC3C,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,KAAmC,EAAE,UAAU,GAAG,IAAI;QAC9D,IACC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,EAC5B,CAAC;YACF,OAAO,IAAI,CAAC;QACb,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IACD,kBAAkB;QACjB,OAAO,IAAI,0BAA0B,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,KAAK;YAClB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;SACf,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAC9B,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,KAAmC;QACzC,IACC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;YAClC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,EACzB,CAAC;YACF,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAED,UAAU,CAAC,KAAmC;QAC7C,OAAO,CACN,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CACxB,CAAC;IACH,CAAC;IAED,QAAQ;QACP,IAAI,kBAAkB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAEtE,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC;YAClD,OAAO,KAAK,kBAAkB,CAAC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,kBAAkB,CAAC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACvG,CAAC;QACD,OAAO,KAAK,kBAAkB,CAAC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,kBAAkB,CAAC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,kBAAkB,CAAC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,kBAAkB,CAAC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAClM,CAAC;IAED,gBAAgB;QACf,OAAO,SAAS,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC;IACxD,CAAC;IAED,iBAAiB;QAChB,uFAAuF;QACvF,MAAM,QAAQ,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC9C,OAAO,gBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,CAAC;CACD;AAnKA;IADC,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;8BACrB,UAAU;wDAAC;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;;0DACb;AAGb;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;+DACL;AAGlB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;4DACP;AAGhB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;0DACT;AAGd;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;4DACP;AAGhB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;0DACT;AAGd;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;2DACR;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;0DACE;AA6IzB,MAAM,OAAO,4BAA4B;IAIxC,EAAE,CAAa;IAGf,IAAI,CAAS;IAGb,SAAS,CAAS;IAGlB,MAAM,CAAU;IAGhB,IAAI,CAAU;IAGd,MAAM,CAAU;IAGhB,IAAI,CAAU;IAGd,KAAK,CAAU;IAGf,IAAI,CAAoB;IAExB,YACC,UAM8D;QAE9D,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI;YACP,UAAwC,CAAC,aAAa;gBACtD,UAA2C,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QACnE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAEzE,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,iBAAiB,CAAC,SAAS,CAAC;QAC3D,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAEO,SAAS,CAAC,UAGjB;QACA,MAAM,MAAM,GAAG,6BAA6B,CAC3C,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EACzB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EACzB,EAAE,EACF,OAAO,CACP,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzB,IAAI,CAAC,KAAK;YACT,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,MAAM;gBACX,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAExD,IACC,IAAI,CAAC,MAAM,GAAG,OAAO;YACrB,IAAI,CAAC,IAAI,GAAG,OAAO;YACnB,IAAI,CAAC,MAAM,GAAG,OAAO;YACrB,IAAI,CAAC,IAAI,GAAG,OAAO;YACnB,IAAI,CAAC,KAAK,GAAG,OAAO;YACpB,IAAI,CAAC,KAAK,GAAG,EAAE,EACd,CAAC;YACF,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACrD,CAAC;IACF,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,QAAQ,CAAC,KAAa;QACrB,OAAO,CACN,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;YAC3C,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAC3C,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,KAAmC,EAAE,UAAU,GAAG,IAAI;QAC9D,IACC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,EAC7B,CAAC;YACF,OAAO,IAAI,CAAC;QACb,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IACD,kBAAkB;QACjB,OAAO,IAAI,0BAA0B,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,KAAK;YAClB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;SACf,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAC9B,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,CAAC,KAAmC;QACzC,IACC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;YAClC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,EACzB,CAAC;YACF,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAED,UAAU,CAAC,KAAmC;QAC7C,OAAO,CACN,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CACxB,CAAC;IACH,CAAC;IAED,QAAQ;QACP,IAAI,kBAAkB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAEtE,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC;YAC1D,OAAO,KAAK,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;QACzI,CAAC;QACD,OAAO,KAAK,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;IACpQ,CAAC;IAED,gBAAgB;QACf,OAAO,SAAS,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC;IACxD,CAAC;IAED,iBAAiB;QAChB,uFAAuF;QACvF,MAAM,QAAQ,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC9C,OAAO,gBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,CAAC;CACD;AAtKA;IADC,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;8BACrB,UAAU;wDAAC;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;;0DACb;AAGb;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;+DACL;AAGlB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;4DACP;AAGhB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;0DACT;AAGd;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;4DACP;AAGhB;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;0DACT;AAGd;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;2DACR;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;0DACE;AAgJzB,MAAM,CAAC,MAAM,WAAW,GAAG,CAC1B,QAAwC,EACxC,OAAiE,EAChE,EAAE;IACH,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,6CAA6C;IAC7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACpE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC1D,CAAC;IAED,sDAAsD;IACtD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;IAC1E,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACd,gFAAgF,CAChF,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAEpE,IAAI,iBAAiB,GAAG,GAAgC,EAAE;QACzD,IAAI,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACrC,IAAI,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;QAC9B,IAAI,eAAe,GAAG,CAAC,CAAC,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBACpC,IAAI,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;gBACvB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;oBAChC,GAAG,IAAI,CAAE,OAAO,CAAC,QAAgB,GAAG,IAAI,CAAC,IAAI,CAAQ,CAAC;oBAEtD,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAQ,CAAC;gBAC/C,CAAC;qBAAM,CAAC;oBACP,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAQ,CAAC;gBAC5C,CAAC;gBAED,IAAI,GAAG,GAAG,UAAU,EAAE,CAAC;oBACtB,UAAU,GAAG,GAAG,CAAC;oBACjB,eAAe,GAAG,CAAC,CAAC;gBACrB,CAAC;YACF,CAAC;YACD,IAAI,GAAG,OAAO,CAAC;QAChB,CAAC;QAED,OAAO,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IACtC,CAAC,CAAC;IACF,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,GAAG,iBAAiB,EAAE,CAAC;IAE1D,IAAI,gBAAgB,GAAW,OAAO,CAAC,QAAQ,GAAG,UAAU,CAAC;IAE7D,IAAI,eAAe,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5B,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B;IAC/C,CAAC;IACD,qDAAqD;IAErD,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;IACtC,OAAO,IAAK,KAAa,CAAC;QACzB,MAAM,EAAE,gBAAgB;QACxB,MAAM,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC,MAAM;QACxC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;KAC/B,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,CAClC,MAA+C,EAC/C,OAMC,EACA,EAAE;IACH,MAAM,EAAE,GAAY,EAAE,CAAC;IACvB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/D,EAAE,CAAC,IAAI,CACN,IAAI,GAAG,CAAC;YACP,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,QAAQ;gBACb,OAAO,EAAE,OAAO,CAAC,WAAW;gBAC5B,KAAK,EAAE,KAAK;aACZ,CAAC;YACF,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,MAAM;gBACX,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,KAAK,EAAE,KAAK;aACZ,CAAC;SACF,CAAC,CACF,CAAC;QACF,EAAE,CAAC,IAAI,CACN,IAAI,GAAG,CAAC;YACP,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,QAAQ;gBACb,OAAO,EAAE,OAAO,CAAC,WAAW;gBAC5B,KAAK,EAAE,KAAK;aACZ,CAAC;YACF,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,MAAM;gBACX,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,KAAK,EAAE,KAAK;aACZ,CAAC;SACF,CAAC,CACF,CAAC;IACH,CAAC;IACD,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QACnB,IAAI,OAAO,GAAG;YACb,IAAI,EAAE,CAAC,EAAE,CAAC;YACV,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,WAAW;gBAChB,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO;gBACrE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;aAC3D,CAAC;SACF,CAAC;QACF,OAAO,OAAO,CAAC;IAChB,CAAC;SAAM,CAAC;QACP,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,iCAAiC,GAAG,CACzC,KAAwB,EACxB,KAAc,EACd,OAMC,EACA,EAAE;IACH,IAAI,KAAc,CAAC;IACnB,IAAI,KAAK,EAAE,CAAC;QACX,KAAK,GAAG;YACP,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,QAAQ;gBACb,OAAO,EAAE,OAAO,CAAC,WAAW;gBAC5B,KAAK,EAAE,KAAK;aACZ,CAAC;YACF,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,MAAM;gBACX,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,KAAK,EAAE,KAAK;aACZ,CAAC;SACF,CAAC;IACH,CAAC;SAAM,CAAC;QACP,KAAK,GAAG;YACP,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,QAAQ;gBACb,OAAO,EAAE,OAAO,CAAC,WAAW;gBAC5B,KAAK,EAAE,KAAK;aACZ,CAAC;YACF,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,MAAM;gBACX,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,KAAK,EAAE,KAAK;aACZ,CAAC;SACF,CAAC;IACH,CAAC;IAED,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CACT,IAAI,cAAc,CAAC;YAClB,GAAG,EAAE,WAAW;YAChB,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO;YACrE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;SAC3D,CAAC,CACF,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,4BAA4B,GAAG,CAIpC,KAA0C,EAC1C,MAA+C,EAE/C,OAQC,EACgD,EAAE;IACnD,kHAAkH;IAElH,OAAO,KAAK,CAAC,OAAO,CACnB;QACC,KAAK,EAAE,0BAA0B,CAAC,MAAM,EAAE;YACzC,IAAI,EAAE,OAAO,EAAE,IAAI;SACnB,CAAC,EAAE,qGAAqG;QACzG,IAAI,EAAE,OAAO,EAAE,IAAI;KACnB,EACD,OAAO,CACP,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,KAAK,EAIrC,KAA0C,EAC1C,MAA+C,EAC/C,OAQC,EACA,EAAE;IACH,kHAAkH;IAElH,IAAI,UAAU,GAER,EAAE,CAAC;IACT,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/D,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAClC;YACC,KAAK,EAAE,iCAAiC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC;YAC/D,IAAI,EAAE,OAAO,EAAE,IAAI;SACnB,EACD,OAAO,CACP,CAAC;QAEF,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CACnC;YACC,KAAK,EAAE,iCAAiC,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC;YAC9D,IAAI,EAAE,OAAO,EAAE,IAAI;SACnB,EACD,OAAO,CACP,CAAC;QAEF,CAAC,GAAG,CAAC,MAAM,aAAa,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CACxE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CACzB,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;IAClB,mFAAmF;AACpF,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,KAAK,EACvC,KAA0C,EAC1C,KAAwB,EACxB,OAMC,EACA,EAAE;IACH,OAAO,KAAK,CAAC,KAAK,CAAC;QAClB,KAAK,EAAE,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC;KACjD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAA2B,UAMlE,EAAE,EAAE;IACJ,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CACtC,UAAU,CAAC,OAAO,CAAC,IAAI,EACvB,UAAU,CAAC,OAAO,CAClB,CAAC;IACF,8BAA8B;IAC9B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,MAAM,0BAA0B,CAC7C,UAAU,CAAC,KAAK,EAChB,KAAK,CAIL,CAAC;QACF,IAAI,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7D,CAAC;IACD,OAAO,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAClB,SAA4B,EAC5B,KAA0C,EAC1C,KAAwB,EACxB,YAAoB,EACpB,OAAgB,EAChB,GAAW,EACX,aAAsB,EACtB,OAAmB,EACnB,OAAuB,EAC0B,EAAE;IACnD,MAAM,aAAa,GAAG,CAAC,CAAoB,EAAE,QAAiB,EAAE,EAAE;QACjE,IAAI,OAAgB,CAAC;QACrB,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YAC3B,OAAO,GAAG;gBACT,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,MAAM;oBACX,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI;oBACtD,KAAK,EAAE,CAAC;iBACR,CAAC;gBACF,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,WAAW;oBAChB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc;oBAC/D,KAAK,EAAE,MAAM,CAAC,GAAG,GAAG,YAAY,CAAC;iBACjC,CAAC;aACF,CAAC;QACH,CAAC;aAAM,CAAC;YACP,OAAO,GAAG;gBACT,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,QAAQ;oBACb,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO;oBAC5D,KAAK,EAAE,CAAC;iBACR,CAAC;gBACF,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,WAAW;oBAChB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc;oBAC/D,KAAK,EAAE,MAAM,CAAC,GAAG,GAAG,YAAY,CAAC;iBACjC,CAAC;aACF,CAAC;QACH,CAAC;QAED,OAAO,CAAC,IAAI,CACX,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CACxE,CAAC;QAEF,IAAI,CAAC,aAAa,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CACX,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,MAAM;gBACX,OAAO,EAAE,OAAO,CAAC,KAAK;gBACtB,KAAK,EAAE,iBAAiB,CAAC,SAAS;aAClC,CAAC,CACF,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IACtE,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,qBAAqB;IAErF,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAC7B;QACC,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC;QAClC,IAAI,EAAE;YACL,SAAS,KAAK,OAAO;gBACpB,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;gBAChD,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;YAClD,YAAY;YACZ,UAAU;SACV;KACD,EACD,OAAO,CACP,CAAC;IAEF,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CACpC;QACC,KAAK,EAAE,aAAa,CACnB,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EACvD,IAAI,CACJ;QACD,IAAI,EAAE;YACL,SAAS,KAAK,OAAO;gBACpB,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;gBAChD,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;YAClD,YAAY;YACZ,UAAU;SACV;KACD,EACD,OAAO,CACP,CAAC;IAEF,OAAO,YAAY,CAClB,CAAC,QAAQ,EAAE,eAAe,CAAC,EAC3B,KAAK,EACL,SAAS,EACT,OAAO,CACP,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAKrC,EAAE,EAAE;IACJ,OAAO;QACN,IAAI,EAAE,CAAC;YACN,IAAI,GAAG,CAAC;gBACP,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,QAAQ;oBACb,OAAO,EAAE,OAAO,CAAC,WAAW;oBAC5B,KAAK,EAAE,KAAK,CAAC,MAAM;iBACnB,CAAC;gBACF,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,MAAM;oBACX,OAAO,EAAE,OAAO,CAAC,cAAc;oBAC/B,KAAK,EAAE,KAAK,CAAC,IAAI;iBACjB,CAAC;aACF,CAAC;YACF,IAAI,GAAG,CAAC;gBACP,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,QAAQ;oBACb,OAAO,EAAE,OAAO,CAAC,WAAW;oBAC5B,KAAK,EAAE,KAAK,CAAC,MAAM;iBACnB,CAAC;gBACF,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,MAAM;oBACX,OAAO,EAAE,OAAO,CAAC,cAAc;oBAC/B,KAAK,EAAE,KAAK,CAAC,IAAI;iBACjB,CAAC;aACF,CAAC;SACF,CAAC;QACF,IAAI,EAAE,CAAC;YACN,IAAI,GAAG,CAAC;gBACP,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,QAAQ;oBACb,OAAO,EAAE,OAAO,CAAC,WAAW;oBAC5B,KAAK,EAAE,KAAK,CAAC,MAAM;iBACnB,CAAC;gBACF,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,MAAM;oBACX,OAAO,EAAE,OAAO,CAAC,cAAc;oBAC/B,KAAK,EAAE,KAAK,CAAC,IAAI;iBACjB,CAAC;aACF,CAAC;YACF,IAAI,GAAG,CAAC;gBACP,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,QAAQ;oBACb,OAAO,EAAE,OAAO,CAAC,WAAW;oBAC5B,KAAK,EAAE,KAAK,CAAC,MAAM;iBACnB,CAAC;gBACF,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,MAAM;oBACX,OAAO,EAAE,OAAO,CAAC,cAAc;oBAC/B,KAAK,EAAE,KAAK,CAAC,IAAI;iBACjB,CAAC;aACF,CAAC;SACF,CAAC;KACF,CAAC;AACH,CAAC,CAAC;AACF,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACtC,KAA0C,EAC1C,KAAmC,EAClC,EAAE;IACH,OAAO,CACN,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC;QAClB,KAAK,EAAE;YACN,GAAG,qBAAqB,CAAC,KAAK,CAAC;YAC/B,IAAI,WAAW,CAAC;gBACf,GAAG,EAAE,MAAM;gBACX,KAAK,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;YACF,kFAAkF;YAClF,IAAI,GAAG,CACN,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,IAAI;gBACT,KAAK,EAAE,KAAK,CAAC,EAAE;aACf,CAAC,CACF;SACD;KACD,CAAC,CAAC,GAAG,CAAC,CACP,CAAC;AACH,CAAC,CAAC;AAEF,OAAO;AACP,MAAM,UAAU,WAAW,CAC1B,IAAS,EACT,EAAO,EACP,SAAwC,EACxC,GAAQ;IAER,MAAM,GAAG,GAAG,CAAC,KAAsB,EAAmB,EAAE,CACvD,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5B,MAAM,IAAI,GAAG,CAA4B,CAAI,EAAE,CAAI,EAAK,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAM,CAAC;IAE3E,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7B,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACjB,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,gCAAgC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAChD,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;QAC3B,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;YAChB,OAAO,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC;QACxB,CAAC;QACD,OAAO,IAAI,GAAG,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;QAC3B,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;YAChB,OAAO,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,OAAO,EAAE,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,YAAY,GAAG,CACpB,SAA2D,EAC3D,KAAwB,EACxB,SAAwC,EACxC,OAAmB,EAC8B,EAAE;IACnD,IAAI,MAAM,GAOJ,EAAE,CAAC;IAET,OAAO;QACN,IAAI,EAAE,KAAK,EACV,KAAa,EAGZ,EAAE;YACH,IAAI,OAAO,GAEP,EAAE,CAAC;YACP,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBACtB,IAAI,CAAC,KAAK,EAAE,CAAC;oBACZ,KAAK,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;oBACzB,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;gBACnB,CAAC;gBACD,IAAI,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;oBAC/D,IAAI,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAErC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;wBACtB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC;wBAEzB,IAAI,IAAuB,CAAC;wBAC5B,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;4BAC7B,IAAI,GAAG,OAAO,CAAC,GAAG,CACjB,WAAW,CACV,OAAO,CAAC,MAAM,EACd,KAAY,EACZ,SAAS,EACT,OAAO,CAAC,QAAe,CACF,EACtB,WAAW,CACV,OAAO,CAAC,IAAI,EACZ,KAAY,EACZ,SAAS,EACT,OAAO,CAAC,QAAe,CACF,CACtB,CAAC;wBACH,CAAC;6BAAM,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;4BAClC,IAAI,GAAG,WAAW,CACjB,OAAO,CAAC,MAAM,EACd,KAAY,EACZ,SAAS,EACT,OAAO,CAAC,QAAe,CACF,CAAC;wBACxB,CAAC;6BAAM,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;4BAClC,IAAI,GAAG,WAAW,CACjB,OAAO,CAAC,IAAI,EACZ,KAAY,EACZ,SAAS,EACT,OAAO,CAAC,QAAe,CACF,CAAC;wBACxB,CAAC;6BAAM,CAAC;4BACP,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;wBACtC,CAAC;wBAED,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC3C,CAAC;gBACF,CAAC;YACF,CAAC;YAED,6DAA6D;YAE7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChC,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;gBACtB,IAAI,WAAW,GAAoB,MAAM,CAAC,SAAS,CAAC;gBACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACxC,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;oBACtB,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxC,IAAI,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;wBAChC,IAAI,OAAO,CAAC,IAAI,GAAG,WAAW,EAAE,CAAC;4BAChC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;4BAC3B,YAAY,GAAG,CAAC,CAAC;wBAClB,CAAC;oBACF,CAAC;gBACF,CAAC;gBAED,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;oBACzB,MAAM;gBACP,CAAC;gBAED,IAAI,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACrD,IAAI,OAAO,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC9B,CAAC;YACF,CAAC;YACD,OAAO,OAAO,CAAC;QAChB,CAAC;QACD,OAAO,EAAE,KAAK,IAAI,EAAE;YACnB,IAAI,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACtE,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC;QACrD,KAAK,EAAE,KAAK,IAAI,EAAE;YACjB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBAClC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;YACxB,CAAC;QACF,CAAC;QACD,GAAG,EAAE,KAAK,IAAI,EAAE;YACf,IAAI,OAAO,GAEL,EAAE,CAAC;YACT,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBAClC,IAAI,GAAG,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;YACtB,CAAC;YACD,OAAO,OAAO,CAAC;QAChB,CAAC;KACD,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAIxB,KAA0C,EAC1C,KAAwB,EACxB,OAAe,EACf,GAAW,EACX,kBAA2B,EAC3B,kBAA2B,EAC3B,OAAmB,EACnB,OAAuB,EACtB,EAAE;IACH,MAAM,YAAY,GAAG,UAAU,CAC9B,OAAO,EACP,KAAK,EACL,KAAK,EACL,OAAO,EACP,IAAI,EACJ,GAAG,EACH,kBAAkB,EAClB,OAAO,EACP,OAAO,CACP,CAAC;IACF,MAAM,YAAY,GAAG,UAAU,CAC9B,OAAO,EACP,KAAK,EACL,KAAK,EACL,OAAO,EACP,IAAI,EACJ,GAAG,EACH,kBAAkB,EAClB,OAAO,EACP,OAAO,CACP,CAAC;IACF;;;;;;;;;;;;;;;SAeK;IACL,OAAO,YAAY,CAClB,CAAC,YAAY,EAAE,YAAY,CAAC,EAC5B,KAAK,EACL,SAAS,EACT,OAAO,CACP,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CACxB,OAA8B,EAC9B,GAAW,EACX,MAAc,EACb,EAAE;IACH,OAAO,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC;AAClD,CAAC,CAAC;AACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AAEH,MAAM,oBAAoB,GAAG,KAAK,EACjC,OAAe,EACf,KAA0C,EAC1C,SAA6D,EAC7D,KAAwB,EACxB,GAAW,EACX,OAAmB,EACnB,OAAsB,GAAG,EAAE,CAAC,IAAI,EAC/B,EAAE;IACH,MAAM,YAAY,GAAG,UAAU,CAC9B,OAAO,EACP,KAAK,EACL,KAAK,EACL,CAAC,EACD,IAAI,EACJ,GAAG,EACH,KAAK,EACL,OAAO,CACP,CAAC;IACF,MAAM,YAAY,GAAG,UAAU,CAC9B,OAAO,EACP,KAAK,EACL,KAAK,EACL,CAAC,EACD,IAAI,EACJ,GAAG,EACH,KAAK,EACL,OAAO,CACP,CAAC;IACF;;;;OAIG;IACH,MAAM,cAAc,GAAG,YAAY,CAClC,CAAC,0BAA0B,CAAC,YAAY,EAAE,YAAY,CAAC,EACvD,KAAK,EACL,SAAS,EACT,OAAO,CACP,CAAC;IAEF,IAAI,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;QAC1D,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3C,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACjC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;YAC3D,IAAI,IAAI,EAAE,EAAE,CAAC;gBACZ,OAAO;YACR,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC,CAAC;AAEF,4DAA4D;AAC5D,+DAA+D;AAC/D,0EAA0E;AAC1E,0EAA0E;AAC1E,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC9B,MAA2B,EAC3B,KAA0C,EAC1C,OAAe,EACf,OAAmB,EACnB,OAGC,EACiD,EAAE;IACpD,MAAM,OAAO,GAA2C,IAAI,GAAG,EAAE,CAAC;IAClE,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,IAAI,GAAG,EAAE,CAAC;IAClB,CAAC;IAED,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACxB,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,qDAAqD;IACrD,IAAI,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAEtB,MAAM,aAAa,GAAG,MAAM,wBAAwB,CACnD,KAAK,EACL,KAAK,CACL,CAAC;QAEF,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YAClC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;oBACzC,OAAO,EAAE,CAAC;gBACX,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YAC1B,CAAC;QACF,CAAC;QAED,IAAI,OAAO,EAAE,iBAAiB,EAAE,CAAC;YAChC,IACC,OAAO,CAAC,iBAAiB,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI;gBAC/C,OAAO,CAAC,iBAAiB,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,EACpD,CAAC;gBACF,MAAM,CAAC,uBAAuB;YAC/B,CAAC;QACF,CAAC;QAED,IAAI,OAAO,EAAE,gBAAgB,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAC9C,SAAS;QACV,CAAC;QAED,IAAI,qBAAqB,GAAG,KAAK,CAAC;QAClC,MAAM,oBAAoB,CACzB,OAAO,EACP,KAAK,EACL,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACX,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,CAAC,EAAE,CAAC;gBACP,IAAI,CAAC,IAAI,EAAE,CAAC;oBACX,OAAO,EAAE,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;gBACjD,CAAC;gBACD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;oBACjB,qBAAqB,GAAG,IAAI,CAAC;gBAC9B,CAAC;YACF,CAAC;QACF,CAAC,EACD,KAAK,EACL,GAAG,EACH,OAAO,EACP,GAAG,EAAE,CAAC,qBAAqB,CAC3B,CAAC;QACF;;YAEI;IACL,CAAC;IACD;;QAEI;IACJ,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,KAAK,EACrB,QAAwD,EACvD,EAAE;IACH,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;IACvB,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EACvC,WAAmB,CAAC,+BAA+B,EACnD,OAAmB,EAClB,EAAE;IACH,2DAA2D,CAAC,wBAAwB;IAEpF,sBAAsB;IACtB,uFAAuF;IACvF,kFAAkF;IAClF,+BAA+B;IAE/B,IAAI,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACzE,OAAO,kBAAkB,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAA2B,UAW1D,EAAwB,EAAE;IAC1B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAEjE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,MAAM,cAAc,CAGpE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAEtE,IAAI,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAE5B,kFAAkF;IAClF,+FAA+F;IAC/F,uGAAuG;IACvG,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;QACtB,MAAM,UAAU,GACf,UAAU,CAAC,KAAK,KAAK,IAAI;YACxB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,uBAAuB,IAAI,IAAI,CAAC,CAAC;QAEvD,oBAAoB;QACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;YAC9B,KAAK,EAAE;gBACN,IAAI,cAAc,CAAC;oBAClB,GAAG,EAAE,WAAW;oBAChB,OAAO,EAAE,OAAO,CAAC,cAAc;oBAC/B,KAAK,EAAE,MAAM,CAAC,GAAG,GAAG,OAAO,CAAC;iBAC5B,CAAC;aACF;SACD,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9C,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC1B,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;IACF,CAAC;IAED,MAAM,YAAY,GAAG,WAAW,IAAI,aAAa,CAAC;IAElD,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,IAAI,OAAO,GAAG,SAAS,CAAC;IAExB,aAAa;IACb,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB,MAAM,qBAAqB,GAAG,KAAK,EAClC,YAA+B,EAC/B,OAAe,EACd,EAAE;QACH,IAAI,IAAI,GAAG,MAAM,QAAQ,CACxB,4BAA4B,CAAe,KAAK,EAAE,YAAY,EAAE;YAC/D,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;YAChE,IAAI,EAAE;gBACL,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,OAAO;gBACrB,GAAG;aACH;SACD,CAAC,CACF,CAAC,CAAC,wCAAwC;QAC3C,OAAO,IAAI,CAAC;IACb,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,KAAK,EAC7B,YAA+B,EAC/B,OAAe,EACd,EAAE;QACH,gCAAgC;QAChC,IAAI,IAAI,GAAG,MAAM,QAAQ,CACxB,UAAU,CACT,OAAO,EACP,KAAK,EACL,YAAY,EACZ,OAAO,EACP,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,UAAU,CAAC,OAAO,CAClB,CACD,CAAC;QACF,OAAO,IAAI,CAAC;IACb,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,KAAK,EACxB,YAA+B,EAC/B,OAAe,EACoC,EAAE;QACrD,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACtE,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,CAAC,MAAM,gBAAgB,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC,CAAC;IAEF,kBAAkB;IAClB,IAAI,WAAW,GAAG,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAE9C,IAAI,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;IAC5C,MAAM,SAAS,GAAG,CAAC,IAAuB,EAAE,EAAE;QAC7C,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YAC5C,WAAW,GAAG,IAAI,CAAC;YACnB,aAAa;YACb,aAAa,IAAI,UAAU,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;YACpD,aAAa;YACb,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,aAAa;YACb,aAAa,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QACtC,CAAC;IACF,CAAC,CAAC;IACF,SAAS,CAAC,aAAa,CAAC,CAAC;IAEzB,IAAI,oBAAoB,GACvB,aAAa,CAAC,CAAC,kIAAkI;IAClJ,IAAI,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAEhC,OACC,oBAAoB,GAAG,kBAAkB,IAAI,mDAAmD;QAChG,aAAa,IAAI,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,mDAAmD;MAC/F,CAAC;QACF,IAAI,aAAa,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAC7D,4BAA4B;QAC5B,IAAI,OAAO,GAAG,IAAI,CAAC;QAEnB,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;YACvB,OAAO,GAAG,KAAK,CAAC;YAChB,aAAa,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YACnD,uBAAuB;QACxB,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;YACvB,MAAM;QACP,CAAC;QAED,IAAI,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QAC5D,IAAI,aAAa,EAAE,CAAC;YACnB,MAAM;QACP,CAAC;QACD,IAAI,IAAI,GAAG,OAAO,CAAC;QACnB,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAE3B,IAAI,cAAc,GAAG,aAAa,CAAC;QAEnC,SAAS,CAAC,YAAY,CAAC,CAAC;QAExB,IAAI,MAAM,GACT,cAAc,GAAG,kBAAkB;YACnC,aAAa,IAAI,kBAAkB,CAAC;QAErC,IACC,CAAC,MAAM;YACP,aAAa,CAAC,CAAC,CAAC;YAChB,UAAU,CAAC,OAAO,CAAC,GAAG,CACrB,WAAW,CACV,IAAI,CAAC,MAAM,EACX,WAAW,EACX,SAAS,EACT,UAAU,CAAC,OAAO,CAAC,QAAQ,CAC3B,EACD,WAAW,CACV,IAAI,CAAC,IAAI,EACT,WAAW,EACX,SAAS,EACT,UAAU,CAAC,OAAO,CAAC,QAAQ,CAC3B,CACD;gBACA,UAAU,CAAC,OAAO,CAAC,GAAG,CACrB,WAAW,CACV,OAAO,CAAC,MAAM,EACd,WAAW,EACX,SAAS,EACT,UAAU,CAAC,OAAO,CAAC,QAAQ,CAC3B,EACD,WAAW,CACV,OAAO,CAAC,IAAI,EACZ,WAAW,EACX,SAAS,EACT,UAAU,CAAC,OAAO,CAAC,QAAQ,CAC3B,CACD,EACD,CAAC;YACF,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QAED,IAAI,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,wCAAwC,EAAE,CAAC;YAC1E,MAAM;QACP,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACb,oBAAoB,GAAG,aAAa,CAAC;QACtC,CAAC;QAED,YAAY,GAAG,YAAY;YAC1B,CAAC,CAAC,WAAW;gBACZ,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC;gBACnD,CAAC,CAAC,OAAO,CAAC,IAAI;YACf,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,YAAY,aAAa,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5D,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AACF;;;;;;;;;;;;;;GAcG;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,KAKxC,EAAE,EAAE;IACJ,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC;QAClB,IAAI,cAAc,CAAC;YAClB,GAAG,EAAE,aAAa;YAClB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,CAAC,MAAM;SACnB,CAAC;QACF,IAAI,cAAc,CAAC;YAClB,GAAG,EAAE,aAAa;YAClB,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC;KACF,CAAC,CAAC;IAEH,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;QACjC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,IAAI,GAAG,GAAG;QACT,EAAE;QACF,IAAI,GAAG,CAAC;YACP,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,aAAa;gBAClB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,CAAC,MAAM;aACnB,CAAC;YACF,IAAI,cAAc,CAAC;gBAClB,GAAG,EAAE,aAAa;gBAClB,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;SACF,CAAC;KACF,CAAC;IACF,OAAO,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;AACpB,CAAC,CAAC;AACF,MAAM,CAAC,MAAM,WAAW,GAAG,CAC1B,OAA2B,EAC3B,KAAgC,EACI,EAAE;IACtC,MAAM,mBAAmB,GAAG,CAAC,OAA2B,EAAE,EAAE;QAC3D,IAAI,GAAG,GAAY,EAAE,CAAC;QACtB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC9B,MAAM,UAAU,GAAG,wBAAwB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC1D,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC/B,6EAA6E;gBAC7E,MAAM,cAAc,GAAG,wBAAwB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC7D,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACzB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACP,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACtB,CAAC;QACF,CAAC;QAED,2EAA2E;QAC3E,GAAG,CAAC,IAAI,CACP,IAAI,SAAS,CAAC;YACb,GAAG,EAAE,yBAAyB;YAC9B,KAAK,EAAE,IAAI;SACX,CAAC,CACF,CAAC;QAEF,oEAAoE;QACpE,OAAO,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC,CAAC;IACF,OAAO;QACN,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,SAAS,CAAC;YACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC9B,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC;aACnC,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,sEAAsE;gBAE5G;;;oBAGI;gBAEJ,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC7B,MAAM,KAAK,CAAC,KAAK,CAAC;gBACnB,CAAC;YACF,CAAC;QACF,CAAC;KACD,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EAIzC,SAAwB,EACxB,KAA0C,EAC1C,OAAe,EACf,GAAW,EACX,OAAmB,EACnB,OAEC,EACA,EAAE;IACH,IAAI,QAAQ,GAAG,KAAK,CAAC,OAAO,CAC3B;QACC,KAAK,EAAE,CAAC,IAAI,WAAW,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;KACtE,EACD,OAAO,CACP,CAAC;IACF,IAAI,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;IACvB,IAAI,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;IAC5B,IAAI,IAAI,EAAE,CAAC;QACV,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAC7B,gBAAgB,CACf,KAAK,EACL,IAAI,CAAC,MAAM,EACX,OAAO,EACP,GAAG,EACH,KAAK,EACL,KAAK,EACL,OAAO,EACP,OAAO,CACP,CACD,CAAC;YACF,IAAI,OAAO,EAAE,CAAC;gBACb,IAAI,GAAG,OAAO,CAAC;YAChB,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAIlC,KAA0C,EAC1C,KAAgE,EAChE,kBAAqC,EACrC,OAAe,EACf,GAAW,EACX,OAAmB,EACnB,OAAsB,EAKpB,EAAE;IACJ,6BAA6B;IAC7B,IAAI,SAAS,GAEE,SAAS,CAAC;IACzB,IAAI,aAAa,GAAkC,SAAS,CAAC;IAE7D,MAAM,aAAa,GAAG,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE;QACxD,aAAa,GAAG,KAAK,CAAC;QACtB,SAAS,GAAG,MAAM,eAAe,CAChC,KAAK,EACL,aAAa,EACb,OAAO,EACP,GAAG,EACH,KAAK,EACL,IAAI,EACJ,OAAO,EACP,OAAO,CACP,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;QACpC,kCAAkC;QAClC,SAAS,GAAG,MAAM,qBAAqB,CACtC,KAAK,EACL,KAAK,EACL,OAAO,EACP,GAAG,EACH,OAAO,EACP,OAAO,CACP,CAAC;QACF,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,iBAAiB;YACjB,MAAM,aAAa,EAAE,CAAC;QACvB,CAAC;aAAM,CAAC;YACP,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC;QAClC,CAAC;IACF,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACnE,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;SAAM,CAAC;QACP,MAAM,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,IAAI,CAAC,SAAS,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;QACzC,OAAO;YACN,SAAS,EAAE,SAAS;YACpB,aAAa,EAAE,OAAO,CAAC,IAAI;YAC3B,WAAW,EAAE,OAAO,CAAC,IAAI;SACzB,CAAC;IACH,CAAC;IAED,aAAa;IACb,IAAI,WAAW,GAAM,CAAC,aAAa,GAAG,kBAAkB,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;IAE7E,uGAAuG;IACvG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACxC,IAAI,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;QAC1C,IAAI,SAAS,CAAC,MAAM,GAAG,aAAa,EAAE,CAAC;YACtC,sBAAsB;gBACrB,OAAO,CAAC,QAAQ,GAAG,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC;QACtD,CAAC;aAAM,CAAC;YACP,sBAAsB,IAAI,CAAE,SAAS,CAAC,MAAc;gBACnD,aAAa,CAAQ,CAAC;QACxB,CAAC;QAED,sHAAsH;QACtH,IACC,SAAS,CAAC,IAAI,KAAK,iBAAiB,CAAC,MAAM;YAC3C,sBAAsB,GAAG,kBAAkB,EAC1C,CAAC;YACF,OAAO;gBACN,SAAS,EAAE,SAAS;gBACpB,aAAa,EAAE,OAAO,CAAC,IAAI;gBAC3B,WAAW,EAAE,OAAO,CAAC,IAAI;aACzB,CAAC;QACH,CAAC;IACF,CAAC;IAED,OAAO;QACN,SAAS;QACT,aAAa;QACb,WAAW;KACX,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAI9B,KAA0C,EAC1C,KAAwB,EACxB,OAAe,EACf,GAAW,EACX,kBAA2B,EAC3B,kBAA2B,EAC3B,OAAmB,EACnB,OAAuB,EACtB,EAAE;IACH,OAAO,QAAQ,CACd,gBAAgB,CACf,KAAK,EACL,KAAK,EACL,OAAO,EACP,GAAG,EACH,kBAAkB,EAClB,kBAAkB,EAClB,OAAO,EACP,OAAO,CACP,CACD,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { type ReplicationDomain } from "./replication-domain.js";
|
|
2
|
-
export
|
|
3
|
-
export
|
|
4
|
-
export declare const createReplicationDomainHash: () => ReplicationDomainHash;
|
|
2
|
+
export type ReplicationDomainHash<R extends "u32" | "u64"> = ReplicationDomain<undefined, any, R>;
|
|
3
|
+
export declare const createReplicationDomainHash: <R extends "u32" | "u64">(resolution: R) => ReplicationDomainHash<R>;
|
|
5
4
|
//# sourceMappingURL=replication-domain-hash.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replication-domain-hash.d.ts","sourceRoot":"","sources":["../../src/replication-domain-hash.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"replication-domain-hash.d.ts","sourceRoot":"","sources":["../../src/replication-domain-hash.ts"],"names":[],"mappings":"AAKA,OAAO,EAEN,KAAK,iBAAiB,EAEtB,MAAM,yBAAyB,CAAC;AAyCjC,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI,iBAAiB,CAC7E,SAAS,EACT,GAAG,EACH,CAAC,CACD,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAI,CAAC,SAAS,KAAK,GAAG,KAAK,cACtD,CAAC,KACX,qBAAqB,CAAC,CAAC,CAWzB,CAAC"}
|
|
@@ -1,25 +1,50 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BinaryWriter } from "@dao-xyz/borsh";
|
|
2
2
|
import { sha256 } from "@peerbit/crypto";
|
|
3
|
+
import { bytesToNumber } from "./integers.js";
|
|
4
|
+
import {} from "./ranges.js";
|
|
3
5
|
import {} from "./replication-domain.js";
|
|
4
|
-
|
|
5
|
-
const seedNumber = new BinaryReader(
|
|
6
|
+
/* const hashToU32 = (hash: Uint8Array) => {
|
|
7
|
+
const seedNumber = new BinaryReader(
|
|
8
|
+
hash.subarray(hash.length - 4, hash.length),
|
|
9
|
+
).u32();
|
|
6
10
|
return seedNumber;
|
|
7
11
|
};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
const hashToU64 = (hash: Uint8Array): bigint => {
|
|
15
|
+
const seedNumber = new BinaryReader(
|
|
16
|
+
hash.subarray(hash.length - 4, hash.length), //
|
|
17
|
+
).u64();
|
|
18
|
+
return seedNumber;
|
|
19
|
+
};
|
|
20
|
+
*/
|
|
21
|
+
const hashTransformer = (resolution) => {
|
|
22
|
+
const numberConverter = bytesToNumber(resolution);
|
|
23
|
+
if (resolution === "u32") {
|
|
24
|
+
return (async (entry) => {
|
|
25
|
+
const utf8writer = new BinaryWriter();
|
|
26
|
+
utf8writer.string(entry.meta.gid);
|
|
27
|
+
const seed = await sha256(utf8writer.finalize());
|
|
28
|
+
return numberConverter(seed);
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
else if (resolution === "u64") {
|
|
32
|
+
return (async (entry) => {
|
|
33
|
+
const utf8writer = new BinaryWriter();
|
|
34
|
+
utf8writer.string(entry.meta.gid);
|
|
35
|
+
const seed = await sha256(utf8writer.finalize());
|
|
36
|
+
return numberConverter(seed);
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
throw new Error("Unsupported resolution");
|
|
41
|
+
}
|
|
18
42
|
};
|
|
19
|
-
export const createReplicationDomainHash = () => {
|
|
43
|
+
export const createReplicationDomainHash = (resolution) => {
|
|
20
44
|
return {
|
|
45
|
+
resolution,
|
|
21
46
|
type: "hash",
|
|
22
|
-
fromEntry: hashTransformer,
|
|
47
|
+
fromEntry: hashTransformer(resolution),
|
|
23
48
|
fromArgs: async (args, log) => {
|
|
24
49
|
return {
|
|
25
50
|
offset: log.node.identity.publicKey,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replication-domain-hash.js","sourceRoot":"","sources":["../../src/replication-domain-hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"replication-domain-hash.js","sourceRoot":"","sources":["../../src/replication-domain-hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAwB,MAAM,aAAa,CAAC;AACnD,OAAO,EAIN,MAAM,yBAAyB,CAAC;AAEjC;;;;;;;;;;;;;;GAcG;AAEH,MAAM,eAAe,GAAG,CACvB,UAAa,EACqB,EAAE;IACpC,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;IAClD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,EAAE,KAAmD,EAAE,EAAE;YACrE,MAAM,UAAU,GAAG,IAAI,YAAY,EAAE,CAAC;YACtC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;YACjD,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC,CAAoC,CAAC;IACvC,CAAC;SAAM,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACjC,OAAO,CAAC,KAAK,EAAE,KAAmD,EAAE,EAAE;YACrE,MAAM,UAAU,GAAG,IAAI,YAAY,EAAE,CAAC;YACtC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;YACjD,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC,CAAoC,CAAC;IACvC,CAAC;SAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC3C,CAAC;AACF,CAAC,CAAC;AAQF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAC1C,UAAa,EACc,EAAE;IAC7B,OAAO;QACN,UAAU;QACV,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,eAAe,CAAI,UAAU,CAAC;QACzC,QAAQ,EAAE,KAAK,EAAE,IAAe,EAAE,GAAQ,EAAE,EAAE;YAC7C,OAAO;gBACN,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;aACnC,CAAC;QACH,CAAC;KACD,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { type ReplicationDomain, type ReplicationDomainMapper
|
|
1
|
+
import { type ReplicationDomain, type ReplicationDomainMapper } from "./replication-domain.js";
|
|
2
2
|
type TimeUnit = "seconds" | "milliseconds" | "microseconds" | "nanoseconds";
|
|
3
|
-
export declare const fromEntry: (origin: Date, unit?: TimeUnit) => ReplicationDomainMapper<any>;
|
|
3
|
+
export declare const fromEntry: (origin: Date, unit?: TimeUnit) => ReplicationDomainMapper<any, "u32">;
|
|
4
4
|
type TimeRange = {
|
|
5
5
|
from: number;
|
|
6
6
|
to: number;
|
|
7
7
|
};
|
|
8
|
-
export type ReplicationDomainTime = ReplicationDomain<TimeRange, any> & {
|
|
9
|
-
fromTime: (time: number | Date) =>
|
|
10
|
-
fromDuration: (duration: number) =>
|
|
8
|
+
export type ReplicationDomainTime = ReplicationDomain<TimeRange, any, "u32"> & {
|
|
9
|
+
fromTime: (time: number | Date) => number;
|
|
10
|
+
fromDuration: (duration: number) => number;
|
|
11
11
|
};
|
|
12
12
|
export declare const createReplicationDomainTime: (origin: Date, unit?: TimeUnit) => ReplicationDomainTime;
|
|
13
13
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replication-domain-time.d.ts","sourceRoot":"","sources":["../../src/replication-domain-time.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,
|
|
1
|
+
{"version":3,"file":"replication-domain-time.d.ts","sourceRoot":"","sources":["../../src/replication-domain-time.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,MAAM,yBAAyB,CAAC;AAEjC,KAAK,QAAQ,GAAG,SAAS,GAAG,cAAc,GAAG,cAAc,GAAG,aAAa,CAAC;AAe5E,eAAO,MAAM,SAAS,WACb,IAAI,SACN,QAAQ,KACZ,uBAAuB,CAAC,GAAG,EAAE,KAAK,CASpC,CAAC;AAEF,KAAK,SAAS,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9C,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG;IAC9E,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,MAAM,CAAC;IAC1C,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;CAC3C,CAAC;AAEF,eAAO,MAAM,2BAA2B,WAC/B,IAAI,SACN,QAAQ,KACZ,qBAuCF,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import {} from "./ranges.js";
|
|
1
2
|
import {} from "./replication-domain.js";
|
|
2
3
|
const scalarNanoToUnit = {
|
|
3
4
|
seconds: BigInt(1e9),
|
|
@@ -30,6 +31,7 @@ export const createReplicationDomainTime = (origin, unit = "milliseconds") => {
|
|
|
30
31
|
return duration;
|
|
31
32
|
};
|
|
32
33
|
return {
|
|
34
|
+
resolution: "u32",
|
|
33
35
|
type: "time",
|
|
34
36
|
fromTime,
|
|
35
37
|
fromDuration,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replication-domain-time.js","sourceRoot":"","sources":["../../src/replication-domain-time.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"replication-domain-time.js","sourceRoot":"","sources":["../../src/replication-domain-time.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,MAAM,aAAa,CAAC;AACnD,OAAO,EAGN,MAAM,yBAAyB,CAAC;AAIjC,MAAM,gBAAgB,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;CACtB,CAAC;AACF,MAAM,iBAAiB,GAAG;IACzB,OAAO,EAAE,GAAG;IACZ,YAAY,EAAE,CAAC;IACf,YAAY,EAAE,IAAI;IAClB,WAAW,EAAE,IAAI;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CACxB,MAAY,EACZ,OAAiB,cAAc,EACO,EAAE;IACxC,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,UAAU,GAAG,CAAC,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAErD,MAAM,EAAE,GAAG,CAAC,KAAuD,EAAE,EAAE;QACtE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC;QAC5D,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC;IAChD,CAAC,CAAC;IACF,OAAO,EAAE,CAAC;AACX,CAAC,CAAC;AASF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAC1C,MAAY,EACZ,OAAiB,cAAc,EACP,EAAE;IAC1B,MAAM,YAAY,GAAG,CAAC,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,CAAC,IAAmB,EAAU,EAAE;QAChD,OAAO,CACN,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,eAAe,CAAC,GAAG,YAAY,CAC1E,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAU,EAAE;QACjD,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC;IACF,OAAO;QACN,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE,MAAM;QACZ,QAAQ;QACR,YAAY;QACZ,SAAS,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC;QAClC,QAAQ,EAAE,KAAK,EAAE,IAA2B,EAAE,GAAG,EAAE,EAAE;YACpD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,OAAO;oBACN,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;iBACnC,CAAC;YACH,CAAC;YACD,OAAO;gBACN,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC3B,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;aACzC,CAAC;YACF;;;;;;;;sCAQuB;QACxB,CAAC;KACD,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import type { PublicSignKey } from "@peerbit/crypto";
|
|
2
2
|
import { type Index } from "@peerbit/indexer-interface";
|
|
3
3
|
import type { Entry, ShallowEntry } from "@peerbit/log";
|
|
4
|
-
import type {
|
|
4
|
+
import type { ReplicationRangeIndexable } from "./index.js";
|
|
5
|
+
import type { NumberFromType } from "./integers.js";
|
|
6
|
+
import type { EntryReplicated } from "./ranges.js";
|
|
5
7
|
import type { ReplicationLimits } from "./replication.js";
|
|
6
|
-
export type u32 =
|
|
7
|
-
export type ReplicationDomainMapper<T> = (entry: Entry<T> | ShallowEntry | EntryReplicated) => Promise<u32> | u32;
|
|
8
|
+
export type ReplicationDomainMapper<T, R extends "u32" | "u64"> = (entry: Entry<T> | ShallowEntry | EntryReplicated<R>) => Promise<NumberFromType<R>> | NumberFromType<R>;
|
|
8
9
|
export type Log = {
|
|
9
10
|
replicas: ReplicationLimits;
|
|
10
11
|
node: {
|
|
@@ -12,28 +13,25 @@ export type Log = {
|
|
|
12
13
|
publicKey: PublicSignKey;
|
|
13
14
|
};
|
|
14
15
|
};
|
|
15
|
-
|
|
16
|
-
timestamp: number;
|
|
17
|
-
}>>;
|
|
18
|
-
replicationIndex: Index<ReplicationRangeIndexable>;
|
|
16
|
+
replicationIndex: Index<ReplicationRangeIndexable<any>>;
|
|
19
17
|
getDefaultMinRoleAge: () => Promise<number>;
|
|
20
18
|
};
|
|
21
19
|
export type ReplicationDomainCoverSet<Args> = (log: Log, roleAge: number | undefined, args: Args) => Promise<string[]> | string[];
|
|
22
|
-
type CoverRange = {
|
|
23
|
-
offset:
|
|
24
|
-
length?:
|
|
20
|
+
type CoverRange<T extends number | bigint> = {
|
|
21
|
+
offset: T | PublicSignKey;
|
|
22
|
+
length?: T;
|
|
25
23
|
};
|
|
26
24
|
export type ReplicationChanges = ReplicationChange[];
|
|
27
25
|
export type ReplicationChange = {
|
|
28
26
|
type: "added";
|
|
29
|
-
range: ReplicationRangeIndexable
|
|
27
|
+
range: ReplicationRangeIndexable<any>;
|
|
30
28
|
} | {
|
|
31
29
|
type: "removed";
|
|
32
|
-
range: ReplicationRangeIndexable
|
|
30
|
+
range: ReplicationRangeIndexable<any>;
|
|
33
31
|
} | {
|
|
34
32
|
type: "updated";
|
|
35
|
-
range: ReplicationRangeIndexable
|
|
36
|
-
prev: ReplicationRangeIndexable
|
|
33
|
+
range: ReplicationRangeIndexable<any>;
|
|
34
|
+
prev: ReplicationRangeIndexable<any>;
|
|
37
35
|
};
|
|
38
36
|
export declare const mergeReplicationChanges: (changes: ReplicationChanges | ReplicationChanges[]) => ReplicationChanges;
|
|
39
37
|
export declare const debounceAggregationChanges: (fn: (changeOrChanges: ReplicationChange[]) => void, delay: number) => {
|
|
@@ -42,12 +40,12 @@ export declare const debounceAggregationChanges: (fn: (changeOrChanges: Replicat
|
|
|
42
40
|
size: () => () => number;
|
|
43
41
|
invoke: () => Promise<void>;
|
|
44
42
|
};
|
|
45
|
-
export type ReplicationDomain<Args, T> = {
|
|
43
|
+
export type ReplicationDomain<Args, T, R extends "u32" | "u64"> = {
|
|
44
|
+
resolution: R;
|
|
46
45
|
type: string;
|
|
47
|
-
fromEntry: ReplicationDomainMapper<T>;
|
|
48
|
-
fromArgs: (args: Args | undefined, log: Log) => Promise<CoverRange
|
|
46
|
+
fromEntry: ReplicationDomainMapper<T, R>;
|
|
47
|
+
fromArgs: (args: Args | undefined, log: Log) => Promise<CoverRange<NumberFromType<R>>> | CoverRange<NumberFromType<R>>;
|
|
49
48
|
};
|
|
50
|
-
export
|
|
51
|
-
export type ExtractDomainArgs<T> = T extends ReplicationDomain<infer Args, any> ? Args : never;
|
|
49
|
+
export type ExtractDomainArgs<T> = T extends ReplicationDomain<infer Args, any, any> ? Args : never;
|
|
52
50
|
export {};
|
|
53
51
|
//# sourceMappingURL=replication-domain.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replication-domain.d.ts","sourceRoot":"","sources":["../../src/replication-domain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAExD,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"replication-domain.d.ts","sourceRoot":"","sources":["../../src/replication-domain.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import {} from "@peerbit/indexer-interface";
|
|
2
|
-
import {
|
|
3
|
-
import { MAX_U32 } from "./role.js";
|
|
2
|
+
import { debounceAccumulator } from "./debounce.js";
|
|
4
3
|
export const mergeReplicationChanges = (changes) => {
|
|
5
4
|
let first = changes[0];
|
|
6
5
|
if (!Array.isArray(first)) {
|
|
@@ -9,7 +8,7 @@ export const mergeReplicationChanges = (changes) => {
|
|
|
9
8
|
return changes.flat();
|
|
10
9
|
};
|
|
11
10
|
export const debounceAggregationChanges = (fn, delay) => {
|
|
12
|
-
return
|
|
11
|
+
return debounceAccumulator((result) => {
|
|
13
12
|
return fn([...result.values()]);
|
|
14
13
|
}, () => {
|
|
15
14
|
let aggregated = new Map();
|
|
@@ -33,7 +32,4 @@ export const debounceAggregationChanges = (fn, delay) => {
|
|
|
33
32
|
};
|
|
34
33
|
}, delay);
|
|
35
34
|
};
|
|
36
|
-
export const uniformToU32 = (cursor) => {
|
|
37
|
-
return cursor * MAX_U32;
|
|
38
|
-
};
|
|
39
35
|
//# sourceMappingURL=replication-domain.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replication-domain.js","sourceRoot":"","sources":["../../src/replication-domain.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,MAAM,4BAA4B,CAAC;AAExD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"replication-domain.js","sourceRoot":"","sources":["../../src/replication-domain.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,MAAM,4BAA4B,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AA8CpD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACtC,OAAkD,EAC7B,EAAE;IACvB,IAAI,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,OAA6B,CAAC;IACtC,CAAC;IACD,OAAQ,OAAgC,CAAC,IAAI,EAAE,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACzC,EAAkD,EAClD,KAAa,EACZ,EAAE;IACH,OAAO,mBAAmB,CACzB,CAAC,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC,EACD,GAAG,EAAE;QACJ,IAAI,UAAU,GAAmC,IAAI,GAAG,EAAE,CAAC;QAC3D,OAAO;YACN,GAAG,EAAE,CAAC,MAAyB,EAAE,EAAE;gBAClC,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACnD,IAAI,IAAI,EAAE,CAAC;oBACV,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;wBACnD,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;oBAC/C,CAAC;gBACF,CAAC;qBAAM,CAAC;oBACP,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAC/C,CAAC;YACF,CAAC;YACD,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE;gBACvB,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC;YACD,IAAI,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI;YAC3B,KAAK,EAAE,UAAU;SACjB,CAAC;IACH,CAAC,EACD,KAAK,CACL,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type Index } from "@peerbit/indexer-interface";
|
|
2
2
|
import { TransportMessage } from "./message.js";
|
|
3
|
-
import {
|
|
3
|
+
import { type ReplicationRangeIndexable, ReplicationRangeMessage } from "./ranges.js";
|
|
4
4
|
import { Observer, Replicator } from "./role.js";
|
|
5
5
|
export type ReplicationLimits = {
|
|
6
6
|
min: MinReplicas;
|
|
@@ -8,7 +8,7 @@ export type ReplicationLimits = {
|
|
|
8
8
|
};
|
|
9
9
|
interface SharedLog {
|
|
10
10
|
replicas: Partial<ReplicationLimits>;
|
|
11
|
-
replicationIndex: Index<ReplicationRangeIndexable
|
|
11
|
+
replicationIndex: Index<ReplicationRangeIndexable<any>> | undefined;
|
|
12
12
|
}
|
|
13
13
|
export declare class MinReplicas {
|
|
14
14
|
getValue(log: SharedLog): number;
|
|
@@ -29,15 +29,15 @@ export declare class ResponseRoleMessage extends TransportMessage {
|
|
|
29
29
|
toReplicationInfoMessage(): AllReplicatingSegmentsMessage;
|
|
30
30
|
}
|
|
31
31
|
export declare class AllReplicatingSegmentsMessage extends TransportMessage {
|
|
32
|
-
segments:
|
|
32
|
+
segments: ReplicationRangeMessage<any>[];
|
|
33
33
|
constructor(properties: {
|
|
34
|
-
segments:
|
|
34
|
+
segments: ReplicationRangeMessage<any>[];
|
|
35
35
|
});
|
|
36
36
|
}
|
|
37
37
|
export declare class AddedReplicationSegmentMessage extends TransportMessage {
|
|
38
|
-
segments:
|
|
38
|
+
segments: ReplicationRangeMessage<any>[];
|
|
39
39
|
constructor(properties: {
|
|
40
|
-
segments:
|
|
40
|
+
segments: ReplicationRangeMessage<any>[];
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
43
|
export declare class StoppedReplicating extends TransportMessage {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replication.d.ts","sourceRoot":"","sources":["../../src/replication.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAEN,
|
|
1
|
+
{"version":3,"file":"replication.d.ts","sourceRoot":"","sources":["../../src/replication.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAEN,KAAK,yBAAyB,EAC9B,uBAAuB,EAEvB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAQ,MAAM,WAAW,CAAC;AAEvD,MAAM,MAAM,iBAAiB,GAAG;IAAE,GAAG,EAAE,WAAW,CAAC;IAAC,GAAG,CAAC,EAAE,WAAW,CAAA;CAAE,CAAC;AAExE,UAAU,SAAS;IAClB,QAAQ,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACrC,gBAAgB,EAAE,KAAK,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;CACpE;AAED,qBAAa,WAAW;IACvB,QAAQ,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM;CAGhC;AAED,qBACa,gBAAiB,SAAQ,WAAW;IAEhD,MAAM,EAAE,MAAM,CAAC;gBAEH,KAAK,EAAE,MAAM;IAKzB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM;CAGjC;AAED,qBACa,6BAA8B,SAAQ,gBAAgB;;CAIlE;AAGD,qBACa,mBAAoB,SAAQ,gBAAgB;IAExD,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;gBAEhB,UAAU,EAAE;QAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAA;KAAE;IAKvD,wBAAwB,IAAI,6BAA6B;CAgBzD;AAED,qBACa,6BAA8B,SAAQ,gBAAgB;IAElE,QAAQ,EAAE,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAE7B,UAAU,EAAE;QAAE,QAAQ,EAAE,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAA;KAAE;CAIpE;AAED,qBACa,8BAA+B,SAAQ,gBAAgB;IAEnE,QAAQ,EAAE,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAE7B,UAAU,EAAE;QAAE,QAAQ,EAAE,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAA;KAAE;CAIpE;AAED,qBACa,kBAAmB,SAAQ,gBAAgB;IAEvD,UAAU,EAAE,UAAU,EAAE,CAAC;gBAEb,UAAU,EAAE;QAAE,UAAU,EAAE,UAAU,EAAE,CAAA;KAAE;CAIpD;AAiBD,eAAO,MAAM,cAAc,gBAAiB,WAAW,KAAG,UAEzD,CAAC;AAEF,qBAAa,gBAAiB,SAAQ,KAAK;gBAC9B,OAAO,EAAE,MAAM;CAG3B;AACD,eAAO,MAAM,cAAc,UAAW;IACrC,IAAI,EAAE;QAAE,IAAI,CAAC,EAAE,UAAU,CAAA;KAAE,CAAC;CAC5B,KAAG,WAKH,CAAC;AAEF,eAAO,MAAM,WAAW,QAClB,SAAS,WAEX;IAAE,IAAI,EAAE;QAAE,IAAI,CAAC,EAAE,UAAU,CAAA;KAAE,CAAA;CAAE,EAAE,GACjC,gBAAgB,CAAC;IAAE,IAAI,EAAE;QAAE,IAAI,CAAC,EAAE,UAAU,CAAA;KAAE,CAAA;CAAE,CAAC,WAUpD,CAAC"}
|
package/dist/src/replication.js
CHANGED
|
@@ -11,7 +11,7 @@ import { deserialize, field, option, serialize, variant, vec, } from "@dao-xyz/b
|
|
|
11
11
|
import { randomBytes } from "@peerbit/crypto";
|
|
12
12
|
import {} from "@peerbit/indexer-interface";
|
|
13
13
|
import { TransportMessage } from "./message.js";
|
|
14
|
-
import { ReplicationIntent,
|
|
14
|
+
import { ReplicationIntent, ReplicationRangeMessage, ReplicationRangeMessageU32, } from "./ranges.js";
|
|
15
15
|
import { Observer, Replicator, Role } from "./role.js";
|
|
16
16
|
export class MinReplicas {
|
|
17
17
|
getValue(log) {
|
|
@@ -58,7 +58,7 @@ let ResponseRoleMessage = class ResponseRoleMessage extends TransportMessage {
|
|
|
58
58
|
return new AllReplicatingSegmentsMessage({
|
|
59
59
|
segments: this.role instanceof Replicator
|
|
60
60
|
? this.role.segments.map((x) => {
|
|
61
|
-
return new
|
|
61
|
+
return new ReplicationRangeMessageU32({
|
|
62
62
|
id: randomBytes(32),
|
|
63
63
|
offset: x.offset,
|
|
64
64
|
factor: x.factor,
|
|
@@ -87,7 +87,7 @@ let AllReplicatingSegmentsMessage = class AllReplicatingSegmentsMessage extends
|
|
|
87
87
|
}
|
|
88
88
|
};
|
|
89
89
|
__decorate([
|
|
90
|
-
field({ type: vec(
|
|
90
|
+
field({ type: vec(ReplicationRangeMessage) }),
|
|
91
91
|
__metadata("design:type", Array)
|
|
92
92
|
], AllReplicatingSegmentsMessage.prototype, "segments", void 0);
|
|
93
93
|
AllReplicatingSegmentsMessage = __decorate([
|
|
@@ -103,7 +103,7 @@ let AddedReplicationSegmentMessage = class AddedReplicationSegmentMessage extend
|
|
|
103
103
|
}
|
|
104
104
|
};
|
|
105
105
|
__decorate([
|
|
106
|
-
field({ type: vec(
|
|
106
|
+
field({ type: vec(ReplicationRangeMessage) }),
|
|
107
107
|
__metadata("design:type", Array)
|
|
108
108
|
], AddedReplicationSegmentMessage.prototype, "segments", void 0);
|
|
109
109
|
AddedReplicationSegmentMessage = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replication.js","sourceRoot":"","sources":["../../src/replication.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EACN,WAAW,EACX,KAAK,EACL,MAAM,EACN,SAAS,EACT,OAAO,EACP,GAAG,GACH,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAc,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACN,iBAAiB,
|
|
1
|
+
{"version":3,"file":"replication.js","sourceRoot":"","sources":["../../src/replication.ts"],"names":[],"mappings":"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"}
|
package/dist/src/role.d.ts
CHANGED
|
@@ -1,19 +1,16 @@
|
|
|
1
|
-
export declare const MAX_U32 = 4294967295;
|
|
2
|
-
export declare const HALF_MAX_U32 = 2147483647;
|
|
3
|
-
export declare const scaleToU32: (value: number) => number;
|
|
4
1
|
export declare const overlaps: (x1: number, x2: number, y1: number, y2: number) => boolean;
|
|
5
2
|
export declare abstract class Role {
|
|
6
3
|
abstract equals(other: Role): boolean;
|
|
7
4
|
}
|
|
8
|
-
export declare const NO_TYPE_VARIANT: Uint8Array
|
|
5
|
+
export declare const NO_TYPE_VARIANT: Uint8Array<ArrayBuffer>;
|
|
9
6
|
export declare class NoType extends Role {
|
|
10
7
|
equals(other: Role): other is NoType;
|
|
11
8
|
}
|
|
12
|
-
export declare const OBSERVER_TYPE_VARIANT: Uint8Array
|
|
9
|
+
export declare const OBSERVER_TYPE_VARIANT: Uint8Array<ArrayBuffer>;
|
|
13
10
|
export declare class Observer extends Role {
|
|
14
11
|
equals(other: Role): other is Observer;
|
|
15
12
|
}
|
|
16
|
-
export declare const REPLICATOR_TYPE_VARIANT: Uint8Array
|
|
13
|
+
export declare const REPLICATOR_TYPE_VARIANT: Uint8Array<ArrayBuffer>;
|
|
17
14
|
export declare class RoleReplicationSegment {
|
|
18
15
|
timestamp: bigint;
|
|
19
16
|
private factorNominator;
|
package/dist/src/role.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../src/role.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../src/role.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,QAAQ,OAAQ,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,YAKtE,CAAC;AAEF,8BAAsB,IAAI;IACzB,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO;CACrC;AAED,eAAO,MAAM,eAAe,yBAAsB,CAAC;AAEnD,qBACa,MAAO,SAAQ,IAAI;IAC/B,MAAM,CAAC,KAAK,EAAE,IAAI;CAGlB;AAED,eAAO,MAAM,qBAAqB,yBAAsB,CAAC;AAEzD,qBACa,QAAS,SAAQ,IAAI;IACjC,MAAM,CAAC,KAAK,EAAE,IAAI;CAGlB;AAED,eAAO,MAAM,uBAAuB,yBAAsB,CAAC;AAG3D,qBAAa,sBAAsB;IAElC,SAAS,EAAE,MAAM,CAAC;IAGlB,OAAO,CAAC,eAAe,CAAS;IAGhC,OAAO,CAAC,eAAe,CAAS;gBAEpB,UAAU,EAAE;QACvB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;KACnB;IAeD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;CACD;AAED,qBACa,UAAW,SAAQ,IAAI;IAEnC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;gBAEvB,UAAU,EAAE;QACvB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;KACf;IAQD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,MAAM,CAAC,KAAK,EAAE,IAAI;CAOlB"}
|