@lodestar/state-transition 1.50.0-dev.033e6b7138 → 1.50.0-dev.040a952dd7
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/lib/block/indexedBuilderState.d.ts +19 -0
- package/lib/block/indexedBuilderState.d.ts.map +1 -0
- package/lib/block/indexedBuilderState.js +60 -0
- package/lib/block/indexedBuilderState.js.map +1 -0
- package/lib/block/processBuilderDepositRequest.d.ts +2 -2
- package/lib/block/processBuilderDepositRequest.d.ts.map +1 -1
- package/lib/block/processBuilderDepositRequest.js +5 -4
- package/lib/block/processBuilderDepositRequest.js.map +1 -1
- package/lib/block/processBuilderExitRequest.d.ts +2 -2
- package/lib/block/processBuilderExitRequest.d.ts.map +1 -1
- package/lib/block/processBuilderExitRequest.js +4 -3
- package/lib/block/processBuilderExitRequest.js.map +1 -1
- package/lib/block/processParentExecutionPayload.d.ts.map +1 -1
- package/lib/block/processParentExecutionPayload.js +23 -18
- package/lib/block/processParentExecutionPayload.js.map +1 -1
- package/lib/index.d.ts +3 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -1
- package/lib/rewards/attestationsRewards.d.ts.map +1 -1
- package/lib/rewards/attestationsRewards.js +8 -1
- package/lib/rewards/attestationsRewards.js.map +1 -1
- package/lib/stateView/beaconStateView.d.ts +22 -21
- package/lib/stateView/beaconStateView.d.ts.map +1 -1
- package/lib/stateView/beaconStateView.js +71 -71
- package/lib/stateView/beaconStateView.js.map +1 -1
- package/lib/stateView/interface.d.ts +34 -21
- package/lib/stateView/interface.d.ts.map +1 -1
- package/lib/stateView/interface.js.map +1 -1
- package/lib/stateView/nativeBeaconStateView.d.ts +92 -100
- package/lib/stateView/nativeBeaconStateView.d.ts.map +1 -1
- package/lib/stateView/nativeBeaconStateView.js +339 -368
- package/lib/stateView/nativeBeaconStateView.js.map +1 -1
- package/lib/stateView/stateViewFactory.d.ts +10 -17
- package/lib/stateView/stateViewFactory.d.ts.map +1 -1
- package/lib/stateView/stateViewFactory.js +17 -13
- package/lib/stateView/stateViewFactory.js.map +1 -1
- package/lib/util/gloas.d.ts +11 -14
- package/lib/util/gloas.d.ts.map +1 -1
- package/lib/util/gloas.js +2 -42
- package/lib/util/gloas.js.map +1 -1
- package/lib/util/index.d.ts +1 -0
- package/lib/util/index.d.ts.map +1 -1
- package/lib/util/index.js +1 -0
- package/lib/util/index.js.map +1 -1
- package/lib/util/sszBytes.d.ts +16 -17
- package/lib/util/sszBytes.d.ts.map +1 -1
- package/lib/util/sszBytes.js +93 -20
- package/lib/util/sszBytes.js.map +1 -1
- package/lib/util/weakSubjectivity.d.ts +11 -6
- package/lib/util/weakSubjectivity.d.ts.map +1 -1
- package/lib/util/weakSubjectivity.js +22 -28
- package/lib/util/weakSubjectivity.js.map +1 -1
- package/package.json +7 -7
- package/src/block/indexedBuilderState.ts +65 -0
- package/src/block/processBuilderDepositRequest.ts +6 -17
- package/src/block/processBuilderExitRequest.ts +5 -9
- package/src/block/processParentExecutionPayload.ts +27 -23
- package/src/index.ts +4 -1
- package/src/rewards/attestationsRewards.ts +8 -1
- package/src/stateView/beaconStateView.ts +75 -76
- package/src/stateView/interface.ts +61 -21
- package/src/stateView/nativeBeaconStateView.ts +354 -375
- package/src/stateView/stateViewFactory.ts +29 -27
- package/src/util/gloas.ts +2 -53
- package/src/util/index.ts +6 -0
- package/src/util/sszBytes.ts +129 -22
- package/src/util/weakSubjectivity.ts +43 -40
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nativeBeaconStateView.js","sourceRoot":"","sources":["../../src/stateView/nativeBeaconStateView.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAY,MAAM,gBAAgB,CAAC;AAoCnD,OAAO,EAAC,sCAAsC,EAAE,4BAA4B,EAAC,MAAM,0BAA0B,CAAC;AAC9G,OAAO,EAOL,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAExB;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,qBAAqB;IAgHX,OAAO;IA/G5B,SAAS;IACD,SAAS,GAAoB,IAAI,CAAC;IAClC,QAAQ,GAAmB,IAAI,CAAC;IAChC,KAAK,GAAgB,IAAI,CAAC;IAC1B,KAAK,GAAgB,IAAI,CAAC;IAC1B,MAAM,GAAiB,IAAI,CAAC;IAC5B,YAAY,GAAkB,IAAI,CAAC;IACnC,sBAAsB,GAAgB,IAAI,CAAC;IAC3C,SAAS,GAA2B,IAAI,CAAC;IACzC,kBAAkB,GAAoC,IAAI,CAAC;IAC3D,4BAA4B,GAAsB,IAAI,CAAC;IACvD,2BAA2B,GAAsB,IAAI,CAAC;IACtD,oBAAoB,GAAsB,IAAI,CAAC;IACvD,yCAAyC;IACjC,qBAAqB,GAAmB,IAAI,CAAC;IAC7C,oBAAoB,GAAmB,IAAI,CAAC;IAC5C,iBAAiB,GAAmB,IAAI,CAAC;IACjD,+EAA+E;IACvE,kBAAkB,GAAwC,SAAS,CAAC;IACpE,iBAAiB,GAA4B,IAAI,CAAC;IAClD,cAAc,GAA4B,IAAI,CAAC;IACvD,wBAAwB;IAChB,2BAA2B,GAAsC,IAAI,CAAC;IACtE,eAAe,GAAkB,IAAI,CAAC;IACtC,qBAAqB,GAAkB,IAAI,CAAC;IACpD,kBAAkB;IACV,yBAAyB,GAAmB,IAAI,CAAC;IACzD,SAAS;IACD,qBAAqB,GAAyB,IAAI,CAAC;IACnD,kBAAkB,GAAyB,IAAI,CAAC;IAChD,2BAA2B,GAAsB,IAAI,CAAC;IACtD,0BAA0B,GAAsB,IAAI,CAAC;IACrD,4BAA4B,GAA8B,IAAI,CAAC;IAC/D,mBAAmB,GAAkB,IAAI,CAAC;IAClD,YAAY;IACJ,6BAA6B,GAAkC,IAAI,CAAC;IACpE,mBAAmB,GAAkB,IAAI,CAAC;IAC1C,qBAAqB,GAAmB,IAAI,CAAC;IAC7C,0BAA0B,GAAmB,IAAI,CAAC;IAC1D,UAAU;IACF,oBAAoB,GAAuC,IAAI,CAAC;IACxE,UAAU;IACF,0BAA0B,GAA6C,IAAI,CAAC;IAC5E,sBAAsB,GAAyC,IAAI,CAAC;IACpE,gBAAgB,GAAmC,IAAI,CAAC;IACxD,qBAAqB,GAAkB,IAAI,CAAC;IAC5C,+BAA+B,GAAkB,IAAI,CAAC;IACtD,2BAA2B,GAAkB,IAAI,CAAC;IAC1D,OAAO;IACC,kBAAkB,GAAkC,IAAI,CAAC;IACjE,QAAQ;IACA,6BAA6B,GAAoB,IAAI,CAAC;IACtD,gBAAgB,GAAmB,IAAI,CAAC;IACxC,0BAA0B,GAA+B,IAAI,CAAC;IAC9D,2BAA2B,GAAgC,IAAI,CAAC;IAChE,uBAAuB,GAAwC,IAAI,CAAC;IACpE,0BAA0B,GAA2C,IAAI,CAAC;IAElF,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,sEAAsE;IACrD,mBAAmB,GAAG,IAAI,GAAG,EAAc,CAAC;IAC5C,oBAAoB,GAAG,IAAI,GAAG,EAAe,CAAC;IAC9C,mBAAmB,GAAG,IAAI,GAAG,EAAc,CAAC;IAC5C,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,oBAAoB,GAAG,IAAI,GAAG,EAAyB,CAAC;IACxD,mBAAmB,GAAG,IAAI,GAAG,EAAuB,CAAC;IACrD,+BAA+B,GAAG,IAAI,GAAG,EAAiB,CAAC;IAC3D,yBAAyB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtD,kBAAkB,GAAG,IAAI,GAAG,EAAwB,CAAC;IACrD,aAAa,GAAG,IAAI,GAAG,EAAoC,CAAC;IAC5D,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,+BAA+B,GAAG,IAAI,GAAG,EAA6B,CAAC;IACvE,wBAAwB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC/D,eAAe,GAAG,IAAI,GAAG,EAAwB,CAAC;IAClD,aAAa,GAAG,IAAI,GAAG,EAAwB,CAAC;IAChD,WAAW,GAAG,IAAI,GAAG,EAA+B,CAAC;IAEtE,uBAAuB;IACf,qBAAqB,GAA0B,IAAI,CAAC;IACpD,oBAAoB,GAA0B,IAAI,CAAC;IACnD,iBAAiB,GAA0B,IAAI,CAAC;IAChD,0CAA0C,GAAsC,IAAI,CAAC;IACrF,iBAAiB,GAA8B,IAAI,CAAC;IACpD,kBAAkB,GAAkB,IAAI,CAAC;IACzC,eAAe,GAAoB,IAAI,CAAC;IACxC,yCAAyC,GAAiB,IAAI,CAAC;IAC/D,sBAAsB,GAAwB,IAAI,CAAC;IACnD,6BAA6B,GAG1B,IAAI,CAAC;IACR,wBAAwB,GAC9B,IAAI,CAAC;IACC,gCAAgC,GAAmB,IAAI,CAAC;IACxD,QAAQ,GAAuB,IAAI,CAAC;IACpC,UAAU,GAAsB,IAAI,CAAC;IACrC,eAAe,GAAkB,IAAI,CAAC;IACtC,oBAAoB,GAAsB,IAAI,CAAC;IAC/C,yBAAyB,GAAkB,IAAI,CAAC;IAChD,aAAa,GAAsB,IAAI,CAAC;IACxC,yBAAyB,GAAgC,IAAI,CAAC;IAC9D,uBAAuB,GAMpB,IAAI,CAAC;IAEhB,YAAqB,OAA+B;uBAA/B,OAAO;IAA2B,CAAC;IAExD,uEAAuE;IACvE,yDAAyD;IACzD,IAAI,4BAA4B;QAC9B,IAAI,IAAI,CAAC,6BAA6B,KAAK,IAAI,EAAE,CAAC;YAChD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC;YACvD,IAAI,CAAC,6BAA6B,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAClF,CAAC;QAED,OAAO,IAAI,CAAC,6BAA6B,CAAC;IAC5C,CAAC;IAED,4EAA4E;IAE5E,IAAI,QAAQ;QACV,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,OAAO;QACT,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC3B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QACvC,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAI,IAAI;QACN,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACjC,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,IAAI;QACN,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACjC,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,KAAK;QACP,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,WAAW;QACb,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAI,qBAAqB;QACvB,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,iBAAiB;QACnB,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,IAAI,2BAA2B;QAC7B,IAAI,IAAI,CAAC,4BAA4B,KAAK,IAAI,EAAE,CAAC;YAC/C,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC;QAC/E,CAAC;QACD,OAAO,IAAI,CAAC,4BAA4B,CAAC;IAC3C,CAAC;IAED,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,2BAA2B,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,IAAI,mBAAmB;QACrB,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED,kBAAkB,CAAC,IAAU;QAC3B,IAAI,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mBAAmB,CAAC,KAAY;QAC9B,IAAI,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kBAAkB,CAAC,IAAU;QAC3B,IAAI,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,YAAY,CAAC,KAAY;QACvB,IAAI,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2BAA2B;IAE3B,mBAAmB,CAAC,KAAY;QAC9B,IAAI,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kBAAkB,CAAC,IAAU,EAAE,KAAqB;QAClD,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;QAC/B,IAAI,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8BAA8B,CAAC,KAAY;QACzC,IAAI,MAAM,GAAG,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;YAC5D,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,oBAAoB;QACtB,IAAI,IAAI,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACjE,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,IAAI,mBAAmB;QACrB,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED,IAAI,gBAAgB;QAClB,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACzD,CAAC;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,wBAAwB,CAAC,KAAY;QACnC,IAAI,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACvD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,oBAAoB;QAClB,IAAI,IAAI,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,mBAAmB;QACjB,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;QACjE,CAAC;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,qBAAqB;IAErB,IAAI,iBAAiB;QACnB,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,IAAI,gBAAgB;QAClB,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACzD,CAAC;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,IAAI,aAAa;QACf,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,iBAAiB,CAAC,IAAU;QAC1B,IAAI,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,0BAA0B;IAE1B,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,2BAA2B,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,yCAAyC;QACvC,IAAI,IAAI,CAAC,0CAA0C,KAAK,IAAI,EAAE,CAAC;YAC7D,IAAI,CAAC,0CAA0C,GAAG,IAAI,CAAC,OAAO,CAAC,yCAAyC,EAAE,CAAC;QAC7G,CAAC;QACD,OAAO,IAAI,CAAC,0CAA0C,CAAC;IACzD,CAAC;IAED,UAAU,CAAC,KAAa;QACtB,IAAI,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,YAAY,CAAC,KAAqB;QAChC,IAAI,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,qBAAqB,CAAC,QAAqB,EAAE,YAAmB;QAC9D,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,cAAc;QAChB,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;YAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QACrD,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,IAAI,oBAAoB;QACtB,IAAI,IAAI,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACjE,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,cAAc;QACZ,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;YAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,MAAM;IAEN,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;IACtC,CAAC;IAED,mBAAmB,CAAC,KAAkB,EAAE,eAA6B;QACnE,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IAClE,CAAC;IAED,0BAA0B,CAAC,YAA0C;QACnE,OAAO,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC,YAAY,CAAC,CAAC;IAC/D,CAAC;IAED,wCAAwC;QACtC,IAAI,IAAI,CAAC,yCAAyC,KAAK,IAAI,EAAE,CAAC;YAC5D,IAAI,CAAC,yCAAyC,GAAG,IAAI,CAAC,OAAO,CAAC,wCAAwC,EAAE,CAAC;QAC3G,CAAC;QACD,OAAO,IAAI,CAAC,yCAAyC,CAAC;IACxD,CAAC;IAED,aAAa;IAEb,wBAAwB,CACtB,mBAA+C,EAC/C,eAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IACrF,CAAC;IAED,oBAAoB,CAAC,mBAA+C,EAAE,eAAwB;QAC5F,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IACjF,CAAC;IAED,SAAS;IAET,qBAAqB;QACnB,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACrE,CAAC;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,cAAc,CAAC,MAAc;QAC3B,IAAI,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,gBAAgB,CAAC,UAAsB;QACrC,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,cAAc;IAEd,4BAA4B;QAI1B,IAAI,IAAI,CAAC,6BAA6B,KAAK,IAAI,EAAE,CAAC;YAChD,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,EAAE,CAAC;QACnF,CAAC;QACD,OAAO,IAAI,CAAC,6BAA6B,CAAC;IAC5C,CAAC;IAED,uBAAuB;QACrB,IAAI,IAAI,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,CAAC;QACzE,CAAC;QACD,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACvC,CAAC;IAED,yBAAyB;IAEzB,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;IAClC,CAAC;IAED,IAAI,4BAA4B;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC;IACnD,CAAC;IAED,IAAI,wBAAwB;QAC1B,IAAI,IAAI,CAAC,yBAAyB,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC;QACzE,CAAC;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC;IACxC,CAAC;IAED,+BAA+B;QAC7B,IAAI,IAAI,CAAC,gCAAgC,KAAK,IAAI,EAAE,CAAC;YACnD,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,OAAO,CAAC,+BAA+B,EAAE,CAAC;QACzF,CAAC;QACD,OAAO,IAAI,CAAC,gCAAgC,CAAC;IAC/C,CAAC;IAED,gBAAgB;IAEhB,cAAc,CACZ,UAAsB,EACtB,mBAAgC,EAChC,IAA+C;QAE/C,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,EAAE,mBAAmB,EAAE,IAAI,CAAC,CAAC,CAAC;IACvG,CAAC;IAED,OAAO;QACL,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC3B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,SAAS;QACP,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC7B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAC7C,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,cAAc;QACZ,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;YAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,gBAAgB,CAAC,MAAiB,EAAE,MAAc;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IAED,mBAAmB;QACjB,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;QACjE,CAAC;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED,wBAAwB;QACtB,IAAI,IAAI,CAAC,yBAAyB,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC;IACxC,CAAC;IAED,0BAA0B,CAAC,MAAiB,EAAE,MAAc;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,mBAAmB;IAEnB,mBAAmB,CAAC,KAA+B,EAAE,OAA+B;QAClF,MAAM,SAAS,GAAG,IAAI,qBAAqB,CACzC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,EAAE,sCAAsC,EAAE,OAAO,CAAC,CAC3F,CAAC;QACF,OAAO,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,eAAe,CACb,WAAyD,EACzD,OAA4B,EAC5B,OAA+B;QAE/B,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAChG,CAAC;IAED,YAAY,CAAC,IAAU,EAAE,IAAoC,EAAE,OAAgC;QAC7F,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACnF,CAAC;IAED,4EAA4E;IAE5E,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,2BAA2B,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,IAAI,yBAAyB;QAC3B,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,6BAA6B,CAAC,cAA8B;QAC1D,OAAO,IAAI,CAAC,0BAA0B,CAAC,cAAc,CAAC,CAAC;IACzD,CAAC;IAED,4BAA4B,CAAC,cAA8B;QACzD,OAAO,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,oBAAoB;QACtB,IAAI,IAAI,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACjE,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,IAAI,iBAAiB;QACnB,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,IAAI,2BAA2B;QAC7B,IAAI,IAAI,CAAC,4BAA4B,KAAK,IAAI,EAAE,CAAC;YAC/C,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC;QAC/E,CAAC;QACD,OAAO,IAAI,CAAC,4BAA4B,CAAC;IAC3C,CAAC;IAED,IAAI,kBAAkB;QACpB,IAAI,IAAI,CAAC,mBAAmB,KAAK,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAC7D,CAAC;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,8BAA8B,CAAC,KAAY;QACzC,IAAI,MAAM,GAAG,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;YAC5D,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,uBAAuB,CAAC,IAAU;QAChC,IAAI,MAAM,GAAG,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YACpD,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2BAA2B,CACzB,KAAkB,EAClB,YAAyC;QAEzC,OAAO,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IACvE,CAAC;IAED,wBAAwB;QACtB,IAAI,IAAI,CAAC,yBAAyB,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC;IACxC,CAAC;IAED,4EAA4E;IAE5E,IAAI,4BAA4B;QAC9B,IAAI,IAAI,CAAC,6BAA6B,KAAK,IAAI,EAAE,CAAC;YAChD,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC;QACjF,CAAC;QACD,OAAO,IAAI,CAAC,6BAA6B,CAAC;IAC5C,CAAC;IAED,IAAI,kBAAkB;QACpB,IAAI,IAAI,CAAC,mBAAmB,KAAK,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAC7D,CAAC;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,IAAI,oBAAoB;QACtB,IAAI,IAAI,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACjE,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,IAAI,yBAAyB;QAC3B,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,kBAAkB,CAAC,KAAuC;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,4EAA4E;IAE5E,IAAI,mBAAmB;QACrB,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED,sBAAsB;QAOpB,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC;QACvE,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,4EAA4E;IAE5E,IAAI,eAAe;QACjB,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,IAAI,oBAAoB;QACtB,IAAI,IAAI,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACjE,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,IAAI,yBAAyB;QAC3B,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,IAAI,8BAA8B;QAChC,IAAI,IAAI,CAAC,+BAA+B,KAAK,IAAI,EAAE,CAAC;YAClD,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC;QACrF,CAAC;QACD,OAAO,IAAI,CAAC,+BAA+B,CAAC;IAC9C,CAAC;IAED,IAAI,qBAAqB;QACvB,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,2BAA2B,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,4EAA4E;IAE5E,IAAI,iBAAiB;QACnB,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,gCAAgC,CAAC,kBAA0B,EAAE,aAAqB;QAChF,OAAO,IAAI,CAAC,OAAO,CAAC,gCAAgC,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;IAC1F,CAAC;IAED,gCAAgC;QAC9B,IAAI,CAAC,OAAO,CAAC,gCAAgC,EAAE,CAAC;IAClD,CAAC;IAED,4EAA4E;IAE5E,IAAI,eAAe;QACjB,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,4EAA4E;IAE5E,IAAI,yBAAyB;QAC3B,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,2BAA2B,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,IAAI,sBAAsB;QACxB,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC;QACrE,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,IAAI,yBAAyB;QAC3B,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,UAAU,CAAC,KAAmB;QAC5B,IAAI,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,iBAAiB;QACf,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC7D,CAAC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,kBAAkB,CAAC,YAA0B,EAAE,SAAiB;QAC9D,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAClE,CAAC;IAED,YAAY,CAAC,KAAY;QACvB,IAAI,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,6BAA6B,CAAC,IAAU;QACtC,OAAO,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,sCAAsC,CAAC,cAA8B,EAAE,IAAU;QAC/E,OAAO,IAAI,CAAC,OAAO,CAAC,sCAAsC,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IACnF,CAAC;IAED,wBAAwB,CAAC,iBAA0C;QACjE,MAAM,IAAI,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACjG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"nativeBeaconStateView.js","sourceRoot":"","sources":["../../src/stateView/nativeBeaconStateView.ts"],"names":[],"mappings":"AAIA,OAAO,EAsBL,oBAAoB,EAGpB,GAAG,GACJ,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAK1D,OAAO,EAAC,sCAAsC,EAAE,4BAA4B,EAAC,MAAM,0BAA0B,CAAC;AAU9G;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,qBAAqB;IAqGb,MAAM;IACd,OAAO;IArGlB,SAAS;IACD,cAAc,GAAoB,IAAI,CAAC;IACvC,aAAa,GAAmB,IAAI,CAAC;IACrC,UAAU,GAAgB,IAAI,CAAC;IAC/B,UAAU,GAAgB,IAAI,CAAC;IAC/B,WAAW,GAAiB,IAAI,CAAC;IACjC,iBAAiB,GAAkB,IAAI,CAAC;IACxC,2BAA2B,GAAgB,IAAI,CAAC;IAChD,cAAc,GAA2B,IAAI,CAAC;IAC9C,uBAAuB,GAAoC,IAAI,CAAC;IAChE,iCAAiC,GAAsB,IAAI,CAAC;IAC5D,gCAAgC,GAAsB,IAAI,CAAC;IAC3D,yBAAyB,GAAsB,IAAI,CAAC;IAC5D,yCAAyC;IACjC,0BAA0B,GAAmB,IAAI,CAAC;IAClD,yBAAyB,GAAmB,IAAI,CAAC;IACjD,sBAAsB,GAAmB,IAAI,CAAC;IACtD,+EAA+E;IACvE,uBAAuB,GAAwC,SAAS,CAAC;IACzE,sBAAsB,GAA4B,IAAI,CAAC;IACvD,mBAAmB,GAA4B,IAAI,CAAC;IAC5D,wBAAwB;IAChB,gCAAgC,GAAsC,IAAI,CAAC;IAC3E,oBAAoB,GAAkB,IAAI,CAAC;IAC3C,0BAA0B,GAAkB,IAAI,CAAC;IACzD,kBAAkB;IACV,8BAA8B,GAAmB,IAAI,CAAC;IAC9D,SAAS;IACD,0BAA0B,GAAyB,IAAI,CAAC;IACxD,uBAAuB,GAAyB,IAAI,CAAC;IACrD,gCAAgC,GAAsB,IAAI,CAAC;IAC3D,+BAA+B,GAAsB,IAAI,CAAC;IAC1D,iCAAiC,GAA8B,IAAI,CAAC;IACpE,wBAAwB,GAAkB,IAAI,CAAC;IACvD,YAAY;IACJ,kCAAkC,GAAkC,IAAI,CAAC;IACzE,wBAAwB,GAAkB,IAAI,CAAC;IAC/C,0BAA0B,GAAmB,IAAI,CAAC;IAClD,+BAA+B,GAAmB,IAAI,CAAC;IAC/D,UAAU;IACF,yBAAyB,GAAuC,IAAI,CAAC;IAC7E,UAAU;IACF,+BAA+B,GAA6C,IAAI,CAAC;IACjF,2BAA2B,GAAyC,IAAI,CAAC;IACzE,qBAAqB,GAAmC,IAAI,CAAC;IAC7D,0BAA0B,GAAkB,IAAI,CAAC;IACjD,oCAAoC,GAAkB,IAAI,CAAC;IAC3D,gCAAgC,GAAkB,IAAI,CAAC;IAC/D,OAAO;IACC,uBAAuB,GAAkC,IAAI,CAAC;IACtE,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,sEAAsE;IACrD,qBAAqB,GAAG,IAAI,GAAG,EAAc,CAAC;IAC9C,sBAAsB,GAAG,IAAI,GAAG,EAAe,CAAC;IAChD,qBAAqB,GAAG,IAAI,GAAG,EAAc,CAAC;IAC9C,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC5C,sBAAsB,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC1D,qBAAqB,GAAG,IAAI,GAAG,EAAuB,CAAC;IACvD,iCAAiC,GAAG,IAAI,GAAG,EAAiB,CAAC;IAC7D,2BAA2B,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxD,oBAAoB,GAAG,IAAI,GAAG,EAAwB,CAAC;IACvD,eAAe,GAAG,IAAI,GAAG,EAAoC,CAAC;IAC9D,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,iCAAiC,GAAG,IAAI,GAAG,EAA6B,CAAC;IACzE,0BAA0B,GAAG,IAAI,GAAG,EAA4B,CAAC;IACjE,iBAAiB,GAAG,IAAI,GAAG,EAAwB,CAAC;IAErE,uBAAuB;IACf,uBAAuB,GAA0B,IAAI,CAAC;IACtD,sBAAsB,GAA0B,IAAI,CAAC;IACrD,mBAAmB,GAA0B,IAAI,CAAC;IAClD,4CAA4C,GAAsC,IAAI,CAAC;IACvF,mBAAmB,GAA8B,IAAI,CAAC;IACtD,iBAAiB,GAAoB,IAAI,CAAC;IAC1C,2CAA2C,GAAiB,IAAI,CAAC;IACjE,wBAAwB,GAAwB,IAAI,CAAC;IACrD,2BAA2B,GAGxB,IAAI,CAAC;IACR,sBAAsB,GAAkF,IAAI,CAAC;IAC7G,qCAAqC,GAAmB,IAAI,CAAC;IAC7D,WAAW,GAAuB,IAAI,CAAC;IACvC,gBAAgB,GAAsB,IAAI,CAAC;IAC3C,oBAAoB,GAAkB,IAAI,CAAC;IAC3C,0BAA0B,GAAsB,IAAI,CAAC;IACrD,8BAA8B,GAAkB,IAAI,CAAC;IACrD,kBAAkB,GAAsB,IAAI,CAAC;IAC7C,2BAA2B,GAAgC,IAAI,CAAC;IAChE,yBAAyB,GAMtB,IAAI,CAAC;IAEhB,YACmB,MAAoB,EAC5B,OAA+B;sBADvB,MAAM;uBACd,OAAO;IACf,CAAC;IAEJ,OAAO;QACL,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,4BAA4B;QAC9B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,4EAA4E;IAE5E,IAAI,QAAQ;QACV,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC9C,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO;QACT,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAC5C,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,IAAI,IAAI;QACN,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC7B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,IAAI;QACN,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC7B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,KAAK;QACP,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,WAAW;QACb,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QACpD,CAAC;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,IAAI,qBAAqB;QACvB,IAAI,IAAI,CAAC,2BAA2B,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC9C,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAI,iBAAiB;QACnB,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,IAAI,2BAA2B;QAC7B,IAAI,IAAI,CAAC,iCAAiC,KAAK,IAAI,EAAE,CAAC;YACpD,IAAI,CAAC,iCAAiC,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC;QACpF,CAAC;QACD,OAAO,IAAI,CAAC,iCAAiC,CAAC;IAChD,CAAC;IAED,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,gCAAgC,KAAK,IAAI,EAAE,CAAC;YACnD,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC;QAClF,CAAC;QACD,OAAO,IAAI,CAAC,gCAAgC,CAAC;IAC/C,CAAC;IAED,IAAI,mBAAmB;QACrB,IAAI,IAAI,CAAC,yBAAyB,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;QACpE,CAAC;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC;IACxC,CAAC;IAED,kBAAkB,CAAC,IAAU;QAC3B,IAAI,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mBAAmB,CAAC,KAAY;QAC9B,IAAI,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kBAAkB,CAAC,IAAU;QAC3B,IAAI,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,YAAY,CAAC,KAAY;QACvB,IAAI,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2BAA2B;IAE3B,mBAAmB,CAAC,KAAY;QAC9B,IAAI,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kBAAkB,CAAC,IAAU,EAAE,KAAqB;QAClD,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;QAC/B,IAAI,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8BAA8B,CAAC,KAAY;QACzC,IAAI,MAAM,GAAG,IAAI,CAAC,iCAAiC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;YAC5D,IAAI,CAAC,iCAAiC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,oBAAoB;QACtB,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,IAAI,mBAAmB;QACrB,IAAI,IAAI,CAAC,yBAAyB,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;QACpE,CAAC;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC;IACxC,CAAC;IAED,IAAI,gBAAgB;QAClB,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,wBAAwB,CAAC,KAAY;QACnC,IAAI,MAAM,GAAG,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,oBAAoB;QAClB,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;QACrE,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,mBAAmB;QACjB,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,mBAAmB,KAAK,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7D,CAAC;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,qBAAqB;IAErB,IAAI,iBAAiB;QACnB,IAAI,IAAI,CAAC,uBAAuB,KAAK,SAAS,EAAE,CAAC;YAC/C,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,IAAI,gBAAgB;QAClB,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,IAAI,aAAa;QACf,IAAI,IAAI,CAAC,mBAAmB,KAAK,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;QACxD,CAAC;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,iBAAiB,CAAC,IAAU;QAC1B,IAAI,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,0BAA0B;IAE1B,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,gCAAgC,KAAK,IAAI,EAAE,CAAC;YACnD,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC;QAClF,CAAC;QACD,OAAO,IAAI,CAAC,gCAAgC,CAAC;IAC/C,CAAC;IAED,yCAAyC;QACvC,IAAI,IAAI,CAAC,4CAA4C,KAAK,IAAI,EAAE,CAAC;YAC/D,IAAI,CAAC,4CAA4C,GAAG,IAAI,CAAC,OAAO,CAAC,yCAAyC,EAAE,CAAC;QAC/G,CAAC;QACD,OAAO,IAAI,CAAC,4CAA4C,CAAC;IAC3D,CAAC;IAED,UAAU,CAAC,KAAa;QACtB,IAAI,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,YAAY,CAAC,KAAqB;QAChC,IAAI,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,qBAAqB,CAAC,QAAqB,EAAE,YAAmB;QAC9D,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,cAAc;QAChB,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAC1D,CAAC;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED,IAAI,oBAAoB;QACtB,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,mBAAmB,KAAK,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7D,CAAC;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,cAAc;QACZ,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QACzD,CAAC;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,MAAM;IAEN,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,KAAkB,EAAE,eAA6B;QACzE,MAAM,SAAS,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,gBAAgB,GAAG,SAAS;YAChC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,wBAAwB,CAAC,SAAS,CAAC;gBACnF,OAAO,EAAE,KAA2B;gBACpC,SAAS,EAAE,eAAe;aACC,CAAC;YAChC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC;gBAC/D,OAAO,EAAE,KAAK;gBACd,SAAS,EAAE,eAAe;aACN,CAAC,CAAC;QAE5B,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IACxF,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,YAA0C;QACzE,OAAO,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC,YAAY,CAAC,CAAC;IAC/D,CAAC;IAED,wCAAwC;QACtC,IAAI,IAAI,CAAC,2CAA2C,KAAK,IAAI,EAAE,CAAC;YAC9D,IAAI,CAAC,2CAA2C,GAAG,IAAI,CAAC,OAAO,CAAC,wCAAwC,EAAE,CAAC;QAC7G,CAAC;QACD,OAAO,IAAI,CAAC,2CAA2C,CAAC;IAC1D,CAAC;IAED,aAAa;IAEb,wBAAwB,CACtB,mBAA+C,EAC/C,eAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IACrF,CAAC;IAED,oBAAoB,CAAC,mBAA+C,EAAE,eAAwB;QAC5F,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IACjF,CAAC;IAED,SAAS;IAET,qBAAqB;QACnB,IAAI,IAAI,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACvE,CAAC;QACD,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACvC,CAAC;IAED,cAAc,CAAC,MAAc;QAC3B,IAAI,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,gBAAgB,CAAC,UAAsB;QACrC,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,cAAc;IAEd,4BAA4B;QAI1B,IAAI,IAAI,CAAC,2BAA2B,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,EAAE,CAAC;QACjF,CAAC;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,uBAAuB;QACrB,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,CAAC;QACvE,CAAC;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,yBAAyB;IAEzB,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;IAClC,CAAC;IAED,IAAI,4BAA4B;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC;IACnD,CAAC;IAED,IAAI,wBAAwB;QAC1B,IAAI,IAAI,CAAC,8BAA8B,KAAK,IAAI,EAAE,CAAC;YACjD,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC;QAC9E,CAAC;QACD,OAAO,IAAI,CAAC,8BAA8B,CAAC;IAC7C,CAAC;IAED,+BAA+B;QAC7B,IAAI,IAAI,CAAC,qCAAqC,KAAK,IAAI,EAAE,CAAC;YACxD,IAAI,CAAC,qCAAqC,GAAG,IAAI,CAAC,OAAO,CAAC,+BAA+B,EAAE,CAAC;QAC9F,CAAC;QACD,OAAO,IAAI,CAAC,qCAAqC,CAAC;IACpD,CAAC;IAED,gBAAgB;IAEhB,cAAc,CACZ,UAAsB,EACtB,mBAAgC,EAChC,IAA+C;QAE/C,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,EAAE,mBAAmB,EAAE,IAAI,CAAC,CAAC,CAAC;IACpH,CAAC;IAED,OAAO;QACL,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5C,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,SAAS;QACP,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,cAAc;QACZ,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED,gBAAgB,CAAC,MAAiB,EAAE,MAAc;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IAED,mBAAmB;QACjB,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;QACvE,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,wBAAwB;QACtB,IAAI,IAAI,CAAC,8BAA8B,KAAK,IAAI,EAAE,CAAC;YACjD,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC;QAChF,CAAC;QACD,OAAO,IAAI,CAAC,8BAA8B,CAAC;IAC7C,CAAC;IAED,0BAA0B,CAAC,MAAiB,EAAE,MAAc;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QACxD,CAAC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,mBAAmB;IAEnB,mBAAmB,CAAC,KAAoB,EAAE,OAA+B;QACvE,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,sCAAsC,EAAE,OAAO,CAAC,CAAC;QAC/F,OAAO,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,eAAe,CACb,EAAC,KAAK,EAAE,GAAG,EAAgB,EAC3B,OAA4B,EAC5B,QAAgC;QAEhC,MAAM,SAAS,GAAG,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,gBAAgB,GACpB,GAAG;YACH,CAAC,SAAS;gBACR,CAAC,CAAC,IAAI,CAAC,MAAM;qBACR,yBAAyB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;qBAC7C,wBAAwB,CAAC,SAAS,CAAC,KAAiC,CAAC;gBAC1E,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,KAA0B,CAAC,CAAC,CAAC;QAC5G,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,gBAAgB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IACpH,CAAC;IAED,YAAY,CAAC,IAAU,EAAE,IAAoC,EAAE,QAAiC;QAC9F,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACvF,CAAC;IAED,4EAA4E;IAE5E,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,gCAAgC,KAAK,IAAI,EAAE,CAAC;YACnD,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC;QAClF,CAAC;QACD,OAAO,IAAI,CAAC,gCAAgC,CAAC;IAC/C,CAAC;IAED,IAAI,yBAAyB;QAC3B,IAAI,IAAI,CAAC,+BAA+B,KAAK,IAAI,EAAE,CAAC;YAClD,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC;QAChF,CAAC;QACD,OAAO,IAAI,CAAC,+BAA+B,CAAC;IAC9C,CAAC;IAED,6BAA6B,CAAC,cAA8B;QAC1D,OAAO,IAAI,CAAC,0BAA0B,CAAC,cAAc,CAAC,CAAC;IACzD,CAAC;IAED,4BAA4B,CAAC,cAA8B;QACzD,OAAO,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,oBAAoB;QACtB,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,IAAI,iBAAiB;QACnB,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,IAAI,2BAA2B;QAC7B,IAAI,IAAI,CAAC,iCAAiC,KAAK,IAAI,EAAE,CAAC;YACpD,IAAI,CAAC,iCAAiC,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC;QACpF,CAAC;QACD,OAAO,IAAI,CAAC,iCAAiC,CAAC;IAChD,CAAC;IAED,IAAI,kBAAkB;QACpB,IAAI,IAAI,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACvC,CAAC;IAED,8BAA8B,CAAC,KAAY;QACzC,IAAI,MAAM,GAAG,IAAI,CAAC,iCAAiC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;YAC5D,IAAI,CAAC,iCAAiC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,uBAAuB,CAAC,IAAU;QAChC,IAAI,MAAM,GAAG,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YACpD,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,KAAkB,EAClB,YAAyC;QAEzC,OAAO,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IACvE,CAAC;IAED,wBAAwB;QACtB,IAAI,IAAI,CAAC,2BAA2B,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,4EAA4E;IAE5E,IAAI,4BAA4B;QAC9B,IAAI,IAAI,CAAC,kCAAkC,KAAK,IAAI,EAAE,CAAC;YACrD,IAAI,CAAC,kCAAkC,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC;QACtF,CAAC;QACD,OAAO,IAAI,CAAC,kCAAkC,CAAC;IACjD,CAAC;IAED,IAAI,kBAAkB;QACpB,IAAI,IAAI,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACvC,CAAC;IAED,IAAI,oBAAoB;QACtB,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,IAAI,yBAAyB;QAC3B,IAAI,IAAI,CAAC,+BAA+B,KAAK,IAAI,EAAE,CAAC;YAClD,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC;QAChF,CAAC;QACD,OAAO,IAAI,CAAC,+BAA+B,CAAC;IAC9C,CAAC;IAED,kBAAkB,CAAC,KAAuC;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,4EAA4E;IAE5E,IAAI,mBAAmB;QACrB,IAAI,IAAI,CAAC,yBAAyB,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;QACpE,CAAC;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC;IACxC,CAAC;IAED,sBAAsB;QAOpB,IAAI,IAAI,CAAC,yBAAyB,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC;QACzE,CAAC;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC;IACxC,CAAC;IAED,4EAA4E;IAE5E,IAAI,eAAe;QACjB,IAAI,IAAI,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,qBAAqB,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACrG,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,IAAI,oBAAoB;QACtB,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACzC,CAAC;IAED,IAAI,yBAAyB;QAC3B,IAAI,IAAI,CAAC,+BAA+B,KAAK,IAAI,EAAE,CAAC;YAClD,IAAI,CAAC,+BAA+B,GAAG,GAAG,CAAC,OAAO,CAAC,yBAAyB,CAAC,WAAW,CACtF,IAAI,CAAC,OAAO,CAAC,yBAAyB,CACvC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,+BAA+B,CAAC;IAC9C,CAAC;IAED,IAAI,8BAA8B;QAChC,IAAI,IAAI,CAAC,oCAAoC,KAAK,IAAI,EAAE,CAAC;YACvD,IAAI,CAAC,oCAAoC,GAAG,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC;QAC1F,CAAC;QACD,OAAO,IAAI,CAAC,oCAAoC,CAAC;IACnD,CAAC;IAED,IAAI,qBAAqB;QACvB,IAAI,IAAI,CAAC,2BAA2B,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,2BAA2B,GAAG,GAAG,CAAC,OAAO,CAAC,qBAAqB,CAAC,WAAW,CAC9E,IAAI,CAAC,OAAO,CAAC,qBAAqB,CACnC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,gCAAgC,KAAK,IAAI,EAAE,CAAC;YACnD,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC;QAClF,CAAC;QACD,OAAO,IAAI,CAAC,gCAAgC,CAAC;IAC/C,CAAC;IAED,4EAA4E;IAE5E,IAAI,iBAAiB;QACnB,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,gCAAgC,CAC9B,mBAA2B,EAC3B,cAAsB;QAEtB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,gCAAgC;QAC9B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,4EAA4E;IAE5E,IAAI,eAAe;QACjB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,yBAAyB;QAC3B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,0BAA0B;QAC5B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,sBAAsB;QACxB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,yBAAyB;QAC3B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,UAAU,CAAC,MAAoB;QAC7B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,iBAAiB;QACf,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,kBAAkB,CAAC,aAA2B,EAAE,UAAkB;QAChE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,YAAY,CAAC,MAAa;QACxB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,6BAA6B,CAAC,KAAW;QACvC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,sCAAsC,CAAC,eAA+B,EAAE,KAAW;QACjF,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,wBAAwB,CAAC,kBAA2C;QAClE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;CACF"}
|
|
@@ -1,39 +1,32 @@
|
|
|
1
|
-
import { type PubkeyCache } from "@chainsafe/lodestar-z/pubkeys";
|
|
2
1
|
import { BeaconConfig } from "@lodestar/config";
|
|
3
|
-
import { BeaconStateAllForks } from "../cache/types.js";
|
|
4
2
|
import { IBeaconStateView } from "./interface.js";
|
|
5
|
-
type
|
|
6
|
-
|
|
7
|
-
anchorState: BeaconStateAllForks;
|
|
3
|
+
type CreateBeaconStateViewOpts = {
|
|
4
|
+
nativeStateTransition: boolean;
|
|
8
5
|
config: BeaconConfig;
|
|
9
|
-
pubkeyCache: PubkeyCache;
|
|
10
|
-
};
|
|
11
|
-
type NativeOpts = {
|
|
12
|
-
useNative: true;
|
|
13
6
|
stateBytes: Uint8Array;
|
|
14
7
|
};
|
|
15
8
|
/**
|
|
16
|
-
* Create a BeaconStateView from
|
|
9
|
+
* Create a BeaconStateView from raw SSZ bytes. Used at node startup.
|
|
17
10
|
*
|
|
18
|
-
*
|
|
19
|
-
* passed separately to BeaconNode.init, so it must live outside this factory).
|
|
11
|
+
* Caller must reserve pubkey capacity before calling this function.
|
|
20
12
|
*
|
|
21
|
-
* Set `
|
|
13
|
+
* Set `nativeStateTransition: true` to use the native (Zig) implementation.
|
|
22
14
|
*/
|
|
23
|
-
export declare function createBeaconStateView(opts:
|
|
15
|
+
export declare function createBeaconStateView(opts: CreateBeaconStateViewOpts): IBeaconStateView;
|
|
24
16
|
type RegenNodeJSOpts = {
|
|
25
|
-
|
|
17
|
+
nativeStateTransition: false;
|
|
26
18
|
config: BeaconConfig;
|
|
27
19
|
stateBytes: Uint8Array;
|
|
28
20
|
};
|
|
29
21
|
type RegenNativeOpts = {
|
|
30
|
-
|
|
22
|
+
nativeStateTransition: true;
|
|
23
|
+
config: BeaconConfig;
|
|
31
24
|
stateBytes: Uint8Array;
|
|
32
25
|
};
|
|
33
26
|
/**
|
|
34
27
|
* Create a BeaconStateView from raw SSZ bytes. Used in the historical state regen worker thread.
|
|
35
28
|
*
|
|
36
|
-
* Set `
|
|
29
|
+
* Set `nativeStateTransition: true` to use the native (Zig) implementation.
|
|
37
30
|
*/
|
|
38
31
|
export declare function createBeaconStateViewForHistoricalRegen(opts: RegenNodeJSOpts | RegenNativeOpts): IBeaconStateView;
|
|
39
32
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stateViewFactory.d.ts","sourceRoot":"","sources":["../../src/stateView/stateViewFactory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stateViewFactory.d.ts","sourceRoot":"","sources":["../../src/stateView/stateViewFactory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAI9C,OAAO,EAAC,gBAAgB,EAAyB,MAAM,gBAAgB,CAAC;AAKxE,KAAK,yBAAyB,GAAG;IAC/B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,yBAAyB,GAAG,gBAAgB,CAQvF;AAID,KAAK,eAAe,GAAG;IACrB,qBAAqB,EAAE,KAAK,CAAC;IAC7B,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,qBAAqB,EAAE,IAAI,CAAC;IAC5B,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,uCAAuC,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,GAAG,gBAAgB,CAQjH"}
|
|
@@ -1,37 +1,41 @@
|
|
|
1
|
+
import bindings from "@chainsafe/lodestar-z";
|
|
1
2
|
import { pubkeyCache } from "@chainsafe/lodestar-z/pubkeys";
|
|
2
3
|
import { createCachedBeaconState } from "../cache/stateCache.js";
|
|
3
4
|
import { getStateTypeFromBytes } from "../util/sszBytes.js";
|
|
4
5
|
import { BeaconStateView } from "./beaconStateView.js";
|
|
6
|
+
import { NativeBeaconStateView } from "./nativeBeaconStateView.js";
|
|
5
7
|
/**
|
|
6
|
-
* Create a BeaconStateView from
|
|
8
|
+
* Create a BeaconStateView from raw SSZ bytes. Used at node startup.
|
|
7
9
|
*
|
|
8
|
-
*
|
|
9
|
-
* passed separately to BeaconNode.init, so it must live outside this factory).
|
|
10
|
+
* Caller must reserve pubkey capacity before calling this function.
|
|
10
11
|
*
|
|
11
|
-
* Set `
|
|
12
|
+
* Set `nativeStateTransition: true` to use the native (Zig) implementation.
|
|
12
13
|
*/
|
|
13
14
|
export function createBeaconStateView(opts) {
|
|
14
|
-
if (opts.
|
|
15
|
-
|
|
16
|
-
// TODO: return a new instance of NativeBeaconStateView
|
|
15
|
+
if (opts.nativeStateTransition) {
|
|
16
|
+
return createNativeBeaconStateView(opts.config, opts.stateBytes);
|
|
17
17
|
}
|
|
18
|
-
const {
|
|
19
|
-
const
|
|
18
|
+
const { config, stateBytes } = opts;
|
|
19
|
+
const state = getStateTypeFromBytes(config, stateBytes).deserializeToViewDU(stateBytes);
|
|
20
|
+
const cachedState = createCachedBeaconState(state, { config, pubkeyCache }, { skipSyncPubkeys: false });
|
|
20
21
|
return new BeaconStateView(cachedState);
|
|
21
22
|
}
|
|
22
23
|
/**
|
|
23
24
|
* Create a BeaconStateView from raw SSZ bytes. Used in the historical state regen worker thread.
|
|
24
25
|
*
|
|
25
|
-
* Set `
|
|
26
|
+
* Set `nativeStateTransition: true` to use the native (Zig) implementation.
|
|
26
27
|
*/
|
|
27
28
|
export function createBeaconStateViewForHistoricalRegen(opts) {
|
|
28
|
-
if (opts.
|
|
29
|
-
|
|
30
|
-
// TODO: return a new instance of NativeBeaconStateView
|
|
29
|
+
if (opts.nativeStateTransition) {
|
|
30
|
+
return createNativeBeaconStateView(opts.config, opts.stateBytes);
|
|
31
31
|
}
|
|
32
32
|
const { config, stateBytes } = opts;
|
|
33
33
|
const state = getStateTypeFromBytes(config, stateBytes).deserializeToViewDU(stateBytes);
|
|
34
34
|
const cachedState = createCachedBeaconState(state, { config, pubkeyCache }, { skipSyncPubkeys: true });
|
|
35
35
|
return new BeaconStateView(cachedState);
|
|
36
36
|
}
|
|
37
|
+
function createNativeBeaconStateView(config, stateBytes) {
|
|
38
|
+
const nativeConfig = new bindings.BeaconConfig(config, config.genesisValidatorsRoot);
|
|
39
|
+
return new NativeBeaconStateView(config, bindings.BeaconStateView.createFromBytes(stateBytes, nativeConfig));
|
|
40
|
+
}
|
|
37
41
|
//# sourceMappingURL=stateViewFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stateViewFactory.js","sourceRoot":"","sources":["../../src/stateView/stateViewFactory.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"stateViewFactory.js","sourceRoot":"","sources":["../../src/stateView/stateViewFactory.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAC,WAAW,EAAC,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EAAC,uBAAuB,EAAC,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAC,qBAAqB,EAAC,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAC,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AAUjE;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAA+B;IACnE,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,OAAO,2BAA2B,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,EAAC,MAAM,EAAE,UAAU,EAAC,GAAG,IAAI,CAAC;IAClC,MAAM,KAAK,GAAG,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACxF,MAAM,WAAW,GAAG,uBAAuB,CAAC,KAAK,EAAE,EAAC,MAAM,EAAE,WAAW,EAAC,EAAE,EAAC,eAAe,EAAE,KAAK,EAAC,CAAC,CAAC;IACpG,OAAO,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC;AAC1C,CAAC;AAgBD;;;;GAIG;AACH,MAAM,UAAU,uCAAuC,CAAC,IAAuC;IAC7F,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,OAAO,2BAA2B,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,EAAC,MAAM,EAAE,UAAU,EAAC,GAAG,IAAI,CAAC;IAClC,MAAM,KAAK,GAAG,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACxF,MAAM,WAAW,GAAG,uBAAuB,CAAC,KAAK,EAAE,EAAC,MAAM,EAAE,WAAW,EAAC,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC,CAAC,CAAC;IACnG,OAAO,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAoB,EAAE,UAAsB;IAC/E,MAAM,YAAY,GAAG,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACrF,OAAO,IAAI,qBAAqB,CAC9B,MAAM,EACN,QAAQ,CAAC,eAAe,CAAC,eAAe,CAAC,UAAU,EAAE,YAAY,CAA2B,CAC7F,CAAC;AACJ,CAAC"}
|
package/lib/util/gloas.d.ts
CHANGED
|
@@ -55,13 +55,6 @@ export declare function canBuilderCoverBid(state: CachedBeaconStateGloas, builde
|
|
|
55
55
|
* Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-initiate_builder_exit
|
|
56
56
|
*/
|
|
57
57
|
export declare function initiateBuilderExit(state: CachedBeaconStateGloas, builderIndex: BuilderIndex): void;
|
|
58
|
-
/**
|
|
59
|
-
* Find the index of a builder by their public key.
|
|
60
|
-
* Returns null if not found.
|
|
61
|
-
*
|
|
62
|
-
* May consider builder pubkey cache if performance becomes an issue.
|
|
63
|
-
*/
|
|
64
|
-
export declare function findBuilderIndexByPubkey(state: CachedBeaconStateGloas, pubkey: Uint8Array): BuilderIndex | null;
|
|
65
58
|
/**
|
|
66
59
|
* Use cached block roots to avoid repeated state root lookups while matching the spec's is_attestation_same_slot behavior.
|
|
67
60
|
*/
|
|
@@ -72,19 +65,23 @@ export declare function getPtcWindowEpochCacheData(state: CachedBeaconStateGloas
|
|
|
72
65
|
payloadTimelinessCommittees: Uint32Array[];
|
|
73
66
|
nextPayloadTimelinessCommittees: Uint32Array[];
|
|
74
67
|
};
|
|
75
|
-
/**
|
|
76
|
-
* Add a new builder to the builders registry. Reuses slots from exited and fully withdrawn
|
|
77
|
-
* builders when available, otherwise appends.
|
|
78
|
-
*
|
|
79
|
-
* Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.11/specs/gloas/beacon-chain.md#new-add_builder_to_registry
|
|
80
|
-
*/
|
|
81
|
-
export declare function addBuilderToRegistry(state: CachedBeaconStateGloas, pubkey: Uint8Array, version: number, executionAddress: Uint8Array, amount: number, slot: number): void;
|
|
82
68
|
/**
|
|
83
69
|
* Append a new builder to the registry without scanning for a reusable slot.
|
|
84
70
|
*
|
|
85
71
|
* This is only safe to be used at the gloas fork transition.
|
|
86
72
|
*/
|
|
87
73
|
export declare function appendBuilderToRegistry(state: CachedBeaconStateGloas, pubkey: Uint8Array, version: number, executionAddress: Uint8Array, amount: number, slot: number): void;
|
|
74
|
+
/**
|
|
75
|
+
* Build a Builder view from builder fields.
|
|
76
|
+
*/
|
|
77
|
+
export declare function createBuilderView(pubkey: Uint8Array, version: number, executionAddress: Uint8Array, amount: number, depositEpoch: Epoch): import("@chainsafe/ssz/lib/viewDU/container.js").ContainerTreeViewDUType<{
|
|
78
|
+
pubkey: import("@chainsafe/ssz").ByteVectorType;
|
|
79
|
+
version: import("@chainsafe/ssz").UintNumberType;
|
|
80
|
+
executionAddress: import("@lodestar/types").ExecutionAddressType;
|
|
81
|
+
balance: import("@chainsafe/ssz").UintNumberType;
|
|
82
|
+
depositEpoch: import("@chainsafe/ssz").UintNumberType;
|
|
83
|
+
withdrawableEpoch: import("@chainsafe/ssz").UintNumberType;
|
|
84
|
+
}>;
|
|
88
85
|
/**
|
|
89
86
|
* Verify the proof of possession on a builder deposit request.
|
|
90
87
|
*
|
package/lib/util/gloas.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gloas.d.ts","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAc9C,OAAO,EAAC,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAM,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAGvD,OAAO,EAAC,qBAAqB,EAAE,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAI1E,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAMzC,wBAAgB,6BAA6B,CAAC,qBAAqB,EAAE,UAAU,GAAG,OAAO,CAExF;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,CAQtF;AAOD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAG9D;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,YAAY,EAAE,YAAY,GAAG,cAAc,CAG9F;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,cAAc,EAAE,cAAc,GAAG,YAAY,CAGhG;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,GAAG,OAAO,CAEtF;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAE1F;AAED,wBAAgB,yBAAyB,CAAC,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAUhG;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAEpH;AAED;;;GAGG;AACH,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,sBAAsB,EAC7B,YAAY,EAAE,YAAY,GACzB,MAAM,CAoBR;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,sBAAsB,EAC7B,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAUT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,YAAY,GAAG,IAAI,CAWnG;AAED
|
|
1
|
+
{"version":3,"file":"gloas.d.ts","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"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"}
|
package/lib/util/gloas.js
CHANGED
|
@@ -130,20 +130,6 @@ export function initiateBuilderExit(state, builderIndex) {
|
|
|
130
130
|
const currentEpoch = computeEpochAtSlot(state.slot);
|
|
131
131
|
builder.withdrawableEpoch = currentEpoch + state.config.MIN_BUILDER_WITHDRAWABILITY_DELAY;
|
|
132
132
|
}
|
|
133
|
-
/**
|
|
134
|
-
* Find the index of a builder by their public key.
|
|
135
|
-
* Returns null if not found.
|
|
136
|
-
*
|
|
137
|
-
* May consider builder pubkey cache if performance becomes an issue.
|
|
138
|
-
*/
|
|
139
|
-
export function findBuilderIndexByPubkey(state, pubkey) {
|
|
140
|
-
for (let i = 0; i < state.builders.length; i++) {
|
|
141
|
-
if (byteArrayEquals(state.builders.getReadonly(i).pubkey, pubkey)) {
|
|
142
|
-
return i;
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
return null;
|
|
146
|
-
}
|
|
147
133
|
/**
|
|
148
134
|
* Use cached block roots to avoid repeated state root lookups while matching the spec's is_attestation_same_slot behavior.
|
|
149
135
|
*/
|
|
@@ -176,31 +162,6 @@ export function getPtcWindowEpochCacheData(state) {
|
|
|
176
162
|
nextPayloadTimelinessCommittees: toUint32Arrays(nextPtcWindow),
|
|
177
163
|
};
|
|
178
164
|
}
|
|
179
|
-
/**
|
|
180
|
-
* Add a new builder to the builders registry. Reuses slots from exited and fully withdrawn
|
|
181
|
-
* builders when available, otherwise appends.
|
|
182
|
-
*
|
|
183
|
-
* Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.11/specs/gloas/beacon-chain.md#new-add_builder_to_registry
|
|
184
|
-
*/
|
|
185
|
-
export function addBuilderToRegistry(state, pubkey, version, executionAddress, amount, slot) {
|
|
186
|
-
const currentEpoch = computeEpochAtSlot(state.slot);
|
|
187
|
-
const depositEpoch = computeEpochAtSlot(slot);
|
|
188
|
-
let builderIndex = state.builders.length;
|
|
189
|
-
for (let i = 0; i < state.builders.length; i++) {
|
|
190
|
-
const builder = state.builders.getReadonly(i);
|
|
191
|
-
if (builder.withdrawableEpoch <= currentEpoch && builder.balance === 0) {
|
|
192
|
-
builderIndex = i;
|
|
193
|
-
break;
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
const newBuilder = createBuilderView(pubkey, version, executionAddress, amount, depositEpoch);
|
|
197
|
-
if (builderIndex < state.builders.length) {
|
|
198
|
-
state.builders.set(builderIndex, newBuilder);
|
|
199
|
-
}
|
|
200
|
-
else {
|
|
201
|
-
state.builders.push(newBuilder);
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
165
|
/**
|
|
205
166
|
* Append a new builder to the registry without scanning for a reusable slot.
|
|
206
167
|
*
|
|
@@ -211,10 +172,9 @@ export function appendBuilderToRegistry(state, pubkey, version, executionAddress
|
|
|
211
172
|
state.builders.push(createBuilderView(pubkey, version, executionAddress, amount, depositEpoch));
|
|
212
173
|
}
|
|
213
174
|
/**
|
|
214
|
-
* Build a Builder view
|
|
215
|
-
* and the append-only {@link appendBuilderToRegistry} so both paths produce an identical view.
|
|
175
|
+
* Build a Builder view from builder fields.
|
|
216
176
|
*/
|
|
217
|
-
function createBuilderView(pubkey, version, executionAddress, amount, depositEpoch) {
|
|
177
|
+
export function createBuilderView(pubkey, version, executionAddress, amount, depositEpoch) {
|
|
218
178
|
return ssz.gloas.Builder.toViewDU({
|
|
219
179
|
pubkey,
|
|
220
180
|
version,
|
package/lib/util/gloas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gloas.js","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"gloas.js","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"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"}
|
package/lib/util/index.d.ts
CHANGED
|
@@ -28,6 +28,7 @@ export * from "./signatureSets.js";
|
|
|
28
28
|
export * from "./signingRoot.js";
|
|
29
29
|
export * from "./slot.js";
|
|
30
30
|
export * from "./ssz.js";
|
|
31
|
+
export { type StateBytesMetadata, getValidatorCountFromStateBytes, getValidatorPubkeyFromStateBytes, readBeaconStateBytesMetadata, } from "./sszBytes.js";
|
|
31
32
|
export * from "./syncCommittee.js";
|
|
32
33
|
export * from "./validator.js";
|
|
33
34
|
export * from "./weakSubjectivity.js";
|
package/lib/util/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,OAAO,EACL,KAAK,kBAAkB,EACvB,+BAA+B,EAC/B,gCAAgC,EAChC,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AACvB,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
|
package/lib/util/index.js
CHANGED
|
@@ -28,6 +28,7 @@ export * from "./signatureSets.js";
|
|
|
28
28
|
export * from "./signingRoot.js";
|
|
29
29
|
export * from "./slot.js";
|
|
30
30
|
export * from "./ssz.js";
|
|
31
|
+
export { getValidatorCountFromStateBytes, getValidatorPubkeyFromStateBytes, readBeaconStateBytesMetadata, } from "./sszBytes.js";
|
|
31
32
|
export * from "./syncCommittee.js";
|
|
32
33
|
export * from "./validator.js";
|
|
33
34
|
export * from "./weakSubjectivity.js";
|
package/lib/util/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,OAAO,EAEL,+BAA+B,EAC/B,gCAAgC,EAChC,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AACvB,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
|
package/lib/util/sszBytes.d.ts
CHANGED
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
import { ChainForkConfig } from "@lodestar/config";
|
|
2
2
|
import { ForkAll, ForkSeq } from "@lodestar/params";
|
|
3
|
-
import { SSZTypesFor, Slot } from "@lodestar/types";
|
|
4
|
-
|
|
5
|
-
* 48 + 32 + 8 + 1 + 8 + 8 + 8 + 8 = 121
|
|
6
|
-
* ```
|
|
7
|
-
* class Validator(Container):
|
|
8
|
-
pubkey: BLSPubkey [fixed - 48 bytes]
|
|
9
|
-
withdrawal_credentials: Bytes32 [fixed - 32 bytes]
|
|
10
|
-
effective_balance: Gwei [fixed - 8 bytes]
|
|
11
|
-
slashed: boolean [fixed - 1 byte]
|
|
12
|
-
# Status epochs
|
|
13
|
-
activation_eligibility_epoch: Epoch [fixed - 8 bytes]
|
|
14
|
-
activation_epoch: Epoch [fixed - 8 bytes]
|
|
15
|
-
exit_epoch: Epoch [fixed - 8 bytes]
|
|
16
|
-
withdrawable_epoch: Epoch [fixed - 8 bytes]
|
|
17
|
-
```
|
|
18
|
-
*/
|
|
19
|
-
export declare const VALIDATOR_BYTES_SIZE = 121;
|
|
3
|
+
import { Epoch, SSZTypesFor, Slot } from "@lodestar/types";
|
|
4
|
+
export declare const VALIDATOR_BYTES_SIZE: number;
|
|
20
5
|
export declare function getForkFromStateBytes(config: ChainForkConfig, bytes: Uint8Array): ForkSeq;
|
|
21
6
|
export declare function getStateTypeFromBytes(config: ChainForkConfig, bytes: Uint8Array): SSZTypesFor<ForkAll, "BeaconState">;
|
|
22
7
|
export declare function getStateSlotFromBytes(bytes: Uint8Array): Slot;
|
|
8
|
+
export type StateBytesMetadata = {
|
|
9
|
+
slot: Slot;
|
|
10
|
+
genesisTime: number;
|
|
11
|
+
genesisValidatorsRoot: Uint8Array;
|
|
12
|
+
};
|
|
13
|
+
export declare function readBeaconStateBytesMetadata(bytes: Uint8Array): StateBytesMetadata | null;
|
|
14
|
+
/** Read only the validator fields needed for weak subjectivity, without allocating validator objects. */
|
|
15
|
+
export declare function scanActiveValidatorsFromStateBytes(stateBytes: Uint8Array, stateType: SSZTypesFor<ForkAll, "BeaconState">, epoch: Epoch): {
|
|
16
|
+
activeValidatorCount: number;
|
|
17
|
+
totalActiveBalanceIncrements: number;
|
|
18
|
+
} | null;
|
|
19
|
+
export declare function getValidatorCountFromStateBytes(config: ChainForkConfig, stateBytes: Uint8Array): number | null;
|
|
20
|
+
/** Returns a view into `stateBytes`, or null if the index is not in the registry. */
|
|
21
|
+
export declare function getValidatorPubkeyFromStateBytes(config: ChainForkConfig, stateBytes: Uint8Array, index: number): Uint8Array | null;
|
|
23
22
|
//# sourceMappingURL=sszBytes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sszBytes.d.ts","sourceRoot":"","sources":["../../src/util/sszBytes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,
|
|
1
|
+
{"version":3,"file":"sszBytes.d.ts","sourceRoot":"","sources":["../../src/util/sszBytes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAA8B,OAAO,EAAE,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAM,MAAM,iBAAiB,CAAC;AAuB9D,eAAO,MAAM,oBAAoB,QAA0D,CAAC;AAe5F,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAGzF;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,GAAG,WAAW,CAAC,OAAO,EAAE,aAAa,CAAC,CAGrH;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAE7D;AAED,MAAM,MAAM,kBAAkB,GAAG;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,qBAAqB,EAAE,UAAU,CAAA;CAAC,CAAC;AAEtG,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,UAAU,GAAG,kBAAkB,GAAG,IAAI,CAgBzF;AAED,yGAAyG;AACzG,wBAAgB,kCAAkC,CAChD,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,WAAW,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,KAAK,EAAE,KAAK,GACX;IAAC,oBAAoB,EAAE,MAAM,CAAC;IAAC,4BAA4B,EAAE,MAAM,CAAA;CAAC,GAAG,IAAI,CAkC7E;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAI9G;AAED,qFAAqF;AACrF,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,eAAe,EACvB,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,MAAM,GACZ,UAAU,GAAG,IAAI,CAUnB"}
|
package/lib/util/sszBytes.js
CHANGED
|
@@ -1,26 +1,27 @@
|
|
|
1
|
+
import { EFFECTIVE_BALANCE_INCREMENT } from "@lodestar/params";
|
|
2
|
+
import { ssz } from "@lodestar/types";
|
|
1
3
|
import { bytesToInt } from "@lodestar/utils";
|
|
4
|
+
const UINT64_SIZE = 8;
|
|
5
|
+
const ROOT_SIZE = 32;
|
|
2
6
|
/**
|
|
3
|
-
* Slot uint64
|
|
4
|
-
*/
|
|
5
|
-
const SLOT_BYTE_COUNT = 8;
|
|
6
|
-
/**
|
|
7
|
-
* 48 + 32 + 8 + 1 + 8 + 8 + 8 + 8 = 121
|
|
8
7
|
* ```
|
|
9
8
|
* class Validator(Container):
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
```
|
|
9
|
+
* pubkey: BLSPubkey [fixed - 48 bytes]
|
|
10
|
+
* withdrawal_credentials: Bytes32 [fixed - 32 bytes]
|
|
11
|
+
* effective_balance: Gwei [fixed - 8 bytes]
|
|
12
|
+
* slashed: boolean [fixed - 1 byte]
|
|
13
|
+
* activation_eligibility_epoch: Epoch [fixed - 8 bytes]
|
|
14
|
+
* activation_epoch: Epoch [fixed - 8 bytes]
|
|
15
|
+
* exit_epoch: Epoch [fixed - 8 bytes]
|
|
16
|
+
* withdrawable_epoch: Epoch [fixed - 8 bytes]
|
|
17
|
+
* ```
|
|
20
18
|
*/
|
|
21
|
-
|
|
19
|
+
const PUBKEY_SIZE = 48;
|
|
20
|
+
const VALIDATOR_EFFECTIVE_BALANCE_OFFSET = PUBKEY_SIZE + ROOT_SIZE;
|
|
21
|
+
const VALIDATOR_ACTIVATION_EPOCH_OFFSET = VALIDATOR_EFFECTIVE_BALANCE_OFFSET + UINT64_SIZE + 1 + UINT64_SIZE;
|
|
22
|
+
const VALIDATOR_EXIT_EPOCH_OFFSET = VALIDATOR_ACTIVATION_EPOCH_OFFSET + UINT64_SIZE;
|
|
23
|
+
export const VALIDATOR_BYTES_SIZE = VALIDATOR_EXIT_EPOCH_OFFSET + UINT64_SIZE + UINT64_SIZE;
|
|
22
24
|
/**
|
|
23
|
-
* 8 + 32 = 40
|
|
24
25
|
* ```
|
|
25
26
|
* class BeaconState(Container):
|
|
26
27
|
* genesis_time: uint64 [fixed - 8 bytes]
|
|
@@ -29,9 +30,11 @@ export const VALIDATOR_BYTES_SIZE = 121;
|
|
|
29
30
|
* ...
|
|
30
31
|
* ```
|
|
31
32
|
*/
|
|
32
|
-
const
|
|
33
|
+
const STATE_GENESIS_TIME_OFFSET = 0;
|
|
34
|
+
const STATE_GENESIS_VALIDATORS_ROOT_OFFSET = STATE_GENESIS_TIME_OFFSET + UINT64_SIZE;
|
|
35
|
+
const STATE_SLOT_OFFSET = STATE_GENESIS_VALIDATORS_ROOT_OFFSET + ROOT_SIZE;
|
|
33
36
|
export function getForkFromStateBytes(config, bytes) {
|
|
34
|
-
const slot = bytesToInt(bytes.subarray(
|
|
37
|
+
const slot = bytesToInt(bytes.subarray(STATE_SLOT_OFFSET, STATE_SLOT_OFFSET + UINT64_SIZE));
|
|
35
38
|
return config.getForkSeq(slot);
|
|
36
39
|
}
|
|
37
40
|
export function getStateTypeFromBytes(config, bytes) {
|
|
@@ -39,6 +42,76 @@ export function getStateTypeFromBytes(config, bytes) {
|
|
|
39
42
|
return config.getForkTypes(slot).BeaconState;
|
|
40
43
|
}
|
|
41
44
|
export function getStateSlotFromBytes(bytes) {
|
|
42
|
-
return bytesToInt(bytes.subarray(
|
|
45
|
+
return bytesToInt(bytes.subarray(STATE_SLOT_OFFSET, STATE_SLOT_OFFSET + UINT64_SIZE));
|
|
46
|
+
}
|
|
47
|
+
export function readBeaconStateBytesMetadata(bytes) {
|
|
48
|
+
if (bytes.length < STATE_SLOT_OFFSET + UINT64_SIZE) {
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
const data = { uint8Array: bytes, dataView: new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength) };
|
|
52
|
+
return {
|
|
53
|
+
genesisTime: ssz.UintNum64.value_deserializeFromBytes(data, STATE_GENESIS_TIME_OFFSET, STATE_GENESIS_TIME_OFFSET + UINT64_SIZE),
|
|
54
|
+
genesisValidatorsRoot: Uint8Array.from(bytes.subarray(STATE_GENESIS_VALIDATORS_ROOT_OFFSET, STATE_GENESIS_VALIDATORS_ROOT_OFFSET + ROOT_SIZE)),
|
|
55
|
+
slot: ssz.Slot.value_deserializeFromBytes(data, STATE_SLOT_OFFSET, STATE_SLOT_OFFSET + UINT64_SIZE),
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
/** Read only the validator fields needed for weak subjectivity, without allocating validator objects. */
|
|
59
|
+
export function scanActiveValidatorsFromStateBytes(stateBytes, stateType, epoch) {
|
|
60
|
+
const range = getValidatorsRangeFromStateBytes(stateBytes, stateType);
|
|
61
|
+
if (range === null) {
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
64
|
+
const data = {
|
|
65
|
+
uint8Array: stateBytes,
|
|
66
|
+
dataView: new DataView(stateBytes.buffer, stateBytes.byteOffset, stateBytes.byteLength),
|
|
67
|
+
};
|
|
68
|
+
let activeValidatorCount = 0;
|
|
69
|
+
let totalActiveBalanceIncrements = 0;
|
|
70
|
+
for (let offset = range.start; offset < range.end; offset += VALIDATOR_BYTES_SIZE) {
|
|
71
|
+
const activationEpoch = ssz.EpochInf.value_deserializeFromBytes(data, offset + VALIDATOR_ACTIVATION_EPOCH_OFFSET, offset + VALIDATOR_ACTIVATION_EPOCH_OFFSET + UINT64_SIZE);
|
|
72
|
+
const exitEpoch = ssz.EpochInf.value_deserializeFromBytes(data, offset + VALIDATOR_EXIT_EPOCH_OFFSET, offset + VALIDATOR_EXIT_EPOCH_OFFSET + UINT64_SIZE);
|
|
73
|
+
if (activationEpoch <= epoch && epoch < exitEpoch) {
|
|
74
|
+
activeValidatorCount++;
|
|
75
|
+
const effectiveBalance = ssz.UintNum64.value_deserializeFromBytes(data, offset + VALIDATOR_EFFECTIVE_BALANCE_OFFSET, offset + VALIDATOR_EFFECTIVE_BALANCE_OFFSET + UINT64_SIZE);
|
|
76
|
+
totalActiveBalanceIncrements += Math.floor(effectiveBalance / EFFECTIVE_BALANCE_INCREMENT);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return { activeValidatorCount, totalActiveBalanceIncrements: Math.max(1, totalActiveBalanceIncrements) };
|
|
80
|
+
}
|
|
81
|
+
export function getValidatorCountFromStateBytes(config, stateBytes) {
|
|
82
|
+
const range = getValidatorsRangeFromStateBytes(stateBytes, getStateTypeFromBytes(config, stateBytes));
|
|
83
|
+
// A non-null range always holds a whole number of validator records, so the division is exact
|
|
84
|
+
return range === null ? null : (range.end - range.start) / VALIDATOR_BYTES_SIZE;
|
|
85
|
+
}
|
|
86
|
+
/** Returns a view into `stateBytes`, or null if the index is not in the registry. */
|
|
87
|
+
export function getValidatorPubkeyFromStateBytes(config, stateBytes, index) {
|
|
88
|
+
const range = getValidatorsRangeFromStateBytes(stateBytes, getStateTypeFromBytes(config, stateBytes));
|
|
89
|
+
if (range === null) {
|
|
90
|
+
return null;
|
|
91
|
+
}
|
|
92
|
+
const start = range.start + index * VALIDATOR_BYTES_SIZE;
|
|
93
|
+
if (index < 0 || start >= range.end) {
|
|
94
|
+
return null;
|
|
95
|
+
}
|
|
96
|
+
return stateBytes.subarray(start, start + PUBKEY_SIZE);
|
|
97
|
+
}
|
|
98
|
+
function getValidatorsRangeFromStateBytes(stateBytes, stateType) {
|
|
99
|
+
let range;
|
|
100
|
+
try {
|
|
101
|
+
const containerType = stateType;
|
|
102
|
+
const dataView = new DataView(stateBytes.buffer, stateBytes.byteOffset, stateBytes.byteLength);
|
|
103
|
+
const ranges = containerType.getFieldRanges(dataView, 0, stateBytes.length);
|
|
104
|
+
range = ranges[Object.keys(containerType.fields).indexOf("validators")];
|
|
105
|
+
}
|
|
106
|
+
catch {
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
if (!range || range.start < 0 || range.end > stateBytes.length || range.end < range.start) {
|
|
110
|
+
return null;
|
|
111
|
+
}
|
|
112
|
+
if ((range.end - range.start) % VALIDATOR_BYTES_SIZE !== 0) {
|
|
113
|
+
return null;
|
|
114
|
+
}
|
|
115
|
+
return range;
|
|
43
116
|
}
|
|
44
117
|
//# sourceMappingURL=sszBytes.js.map
|