@feelyourprotocol/block 8141.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +373 -0
- package/README.md +466 -0
- package/dist/cjs/block/block.d.ts +147 -0
- package/dist/cjs/block/block.d.ts.map +1 -0
- package/dist/cjs/block/block.js +415 -0
- package/dist/cjs/block/block.js.map +1 -0
- package/dist/cjs/block/constructors.d.ts +77 -0
- package/dist/cjs/block/constructors.d.ts.map +1 -0
- package/dist/cjs/block/constructors.js +298 -0
- package/dist/cjs/block/constructors.js.map +1 -0
- package/dist/cjs/block/index.d.ts +3 -0
- package/dist/cjs/block/index.d.ts.map +1 -0
- package/dist/cjs/block/index.js +19 -0
- package/dist/cjs/block/index.js.map +1 -0
- package/dist/cjs/consensus/clique.d.ts +52 -0
- package/dist/cjs/consensus/clique.d.ts.map +1 -0
- package/dist/cjs/consensus/clique.js +144 -0
- package/dist/cjs/consensus/clique.js.map +1 -0
- package/dist/cjs/consensus/ethash.d.ts +9 -0
- package/dist/cjs/consensus/ethash.d.ts.map +1 -0
- package/dist/cjs/consensus/ethash.js +13 -0
- package/dist/cjs/consensus/ethash.js.map +1 -0
- package/dist/cjs/consensus/index.d.ts +3 -0
- package/dist/cjs/consensus/index.d.ts.map +1 -0
- package/dist/cjs/consensus/index.js +29 -0
- package/dist/cjs/consensus/index.js.map +1 -0
- package/dist/cjs/from-beacon-payload.d.ts +36 -0
- package/dist/cjs/from-beacon-payload.d.ts.map +1 -0
- package/dist/cjs/from-beacon-payload.js +48 -0
- package/dist/cjs/from-beacon-payload.js.map +1 -0
- package/dist/cjs/header/constructors.d.ts +39 -0
- package/dist/cjs/header/constructors.d.ts.map +1 -0
- package/dist/cjs/header/constructors.js +127 -0
- package/dist/cjs/header/constructors.js.map +1 -0
- package/dist/cjs/header/header.d.ts +134 -0
- package/dist/cjs/header/header.d.ts.map +1 -0
- package/dist/cjs/header/header.js +699 -0
- package/dist/cjs/header/header.js.map +1 -0
- package/dist/cjs/header/index.d.ts +3 -0
- package/dist/cjs/header/index.d.ts.map +1 -0
- package/dist/cjs/header/index.js +19 -0
- package/dist/cjs/header/index.js.map +1 -0
- package/dist/cjs/helpers.d.ts +59 -0
- package/dist/cjs/helpers.d.ts.map +1 -0
- package/dist/cjs/helpers.js +172 -0
- package/dist/cjs/helpers.js.map +1 -0
- package/dist/cjs/index.d.ts +8 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +31 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/params.d.ts +3 -0
- package/dist/cjs/params.d.ts.map +1 -0
- package/dist/cjs/params.js +97 -0
- package/dist/cjs/params.js.map +1 -0
- package/dist/cjs/types.d.ts +228 -0
- package/dist/cjs/types.d.ts.map +1 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/esm/block/block.d.ts +147 -0
- package/dist/esm/block/block.d.ts.map +1 -0
- package/dist/esm/block/block.js +411 -0
- package/dist/esm/block/block.js.map +1 -0
- package/dist/esm/block/constructors.d.ts +77 -0
- package/dist/esm/block/constructors.d.ts.map +1 -0
- package/dist/esm/block/constructors.js +286 -0
- package/dist/esm/block/constructors.js.map +1 -0
- package/dist/esm/block/index.d.ts +3 -0
- package/dist/esm/block/index.d.ts.map +1 -0
- package/dist/esm/block/index.js +3 -0
- package/dist/esm/block/index.js.map +1 -0
- package/dist/esm/consensus/clique.d.ts +52 -0
- package/dist/esm/consensus/clique.d.ts.map +1 -0
- package/dist/esm/consensus/clique.js +132 -0
- package/dist/esm/consensus/clique.js.map +1 -0
- package/dist/esm/consensus/ethash.d.ts +9 -0
- package/dist/esm/consensus/ethash.d.ts.map +1 -0
- package/dist/esm/consensus/ethash.js +10 -0
- package/dist/esm/consensus/ethash.js.map +1 -0
- package/dist/esm/consensus/index.d.ts +3 -0
- package/dist/esm/consensus/index.d.ts.map +1 -0
- package/dist/esm/consensus/index.js +3 -0
- package/dist/esm/consensus/index.js.map +1 -0
- package/dist/esm/from-beacon-payload.d.ts +36 -0
- package/dist/esm/from-beacon-payload.d.ts.map +1 -0
- package/dist/esm/from-beacon-payload.js +45 -0
- package/dist/esm/from-beacon-payload.js.map +1 -0
- package/dist/esm/header/constructors.d.ts +39 -0
- package/dist/esm/header/constructors.d.ts.map +1 -0
- package/dist/esm/header/constructors.js +120 -0
- package/dist/esm/header/constructors.js.map +1 -0
- package/dist/esm/header/header.d.ts +134 -0
- package/dist/esm/header/header.d.ts.map +1 -0
- package/dist/esm/header/header.js +695 -0
- package/dist/esm/header/header.js.map +1 -0
- package/dist/esm/header/index.d.ts +3 -0
- package/dist/esm/header/index.d.ts.map +1 -0
- package/dist/esm/header/index.js +3 -0
- package/dist/esm/header/index.js.map +1 -0
- package/dist/esm/helpers.d.ts +59 -0
- package/dist/esm/helpers.d.ts.map +1 -0
- package/dist/esm/helpers.js +161 -0
- package/dist/esm/helpers.js.map +1 -0
- package/dist/esm/index.d.ts +8 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/params.d.ts +3 -0
- package/dist/esm/params.d.ts.map +1 -0
- package/dist/esm/params.js +94 -0
- package/dist/esm/params.js.map +1 -0
- package/dist/esm/types.d.ts +228 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/tsconfig.prod.cjs.tsbuildinfo +1 -0
- package/dist/tsconfig.prod.esm.tsbuildinfo +1 -0
- package/package.json +75 -0
- package/src/block/block.ts +526 -0
- package/src/block/constructors.ts +407 -0
- package/src/block/index.ts +2 -0
- package/src/consensus/clique.ts +171 -0
- package/src/consensus/ethash.ts +11 -0
- package/src/consensus/index.ts +12 -0
- package/src/from-beacon-payload.ts +82 -0
- package/src/header/constructors.ts +169 -0
- package/src/header/header.ts +890 -0
- package/src/header/index.ts +2 -0
- package/src/helpers.ts +223 -0
- package/src/index.ts +13 -0
- package/src/params.ts +95 -0
- package/src/types.ts +254 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header.js","sourceRoot":"","sources":["../../../src/header/header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjG,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AACrC,OAAO,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,0BAA0B,EAC1B,aAAa,EACb,mBAAmB,EACnB,WAAW,EACX,UAAU,EACV,WAAW,EACX,qBAAqB,EACrB,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,MAAM,GACP,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAQ1C,MAAM,iBAAiB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;AAEpD;;GAEG;AACH,MAAM,OAAO,WAAW;IAiCtB;;OAEG;IACH,IAAI,UAAU;QACZ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,0EAA0E,CAC3E,CAAA;YACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED;;;;;;OAMG;IACH,YAAY,UAAsB,EAAE,OAAqB,EAAE;QAxBjD,UAAK,GAAgB;YAC7B,IAAI,EAAE,SAAS;SAChB,CAAA;QAuBC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC;gBACvB,KAAK,EAAE,OAAO,EAAE,UAAU;aAC3B,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,IAAI,WAAW,CAAC,CAAA;QAEpD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,IAAI,UAAU,CAAA;QAEtE,MAAM,2BAA2B,GAAG,IAAI,CAAC,6BAA6B,IAAI,KAAK,CAAA;QAE/E,MAAM,QAAQ,GAAG;YACf,UAAU,EAAE,IAAI,UAAU,CAAC,EAAE,CAAC;YAC9B,SAAS,EAAE,mBAAmB;YAC9B,QAAQ,EAAE,iBAAiB,EAAE;YAC7B,SAAS,EAAE,IAAI,UAAU,CAAC,EAAE,CAAC;YAC7B,gBAAgB,EAAE,aAAa;YAC/B,WAAW,EAAE,aAAa;YAC1B,SAAS,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC;YAC9B,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,iBAAiB;YAC3B,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;YAC5B,OAAO,EAAE,IAAI,UAAU,CAAC,EAAE,CAAC;YAC3B,KAAK,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;SACzB,CAAA;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAA;QAC9F,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAA;QAC3F,MAAM,QAAQ,GAAG,IAAI,OAAO,CAC1B,MAAM,CAAC,UAAU,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,CACxE,CAAA;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAA;QAC3F,MAAM,gBAAgB,GACpB,MAAM,CAAC,UAAU,CAAC,gBAAgB,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,gBAAgB,CAAA;QACzF,MAAM,WAAW,GACf,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,WAAW,CAAA;QAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAA;QAC3F,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAA;QAC1F,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAA;QAC9E,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAA;QACpF,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAA;QACjF,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAA;QACvF,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAA;QAC3F,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAA;QACrF,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAA;QAE/E,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,KAAK,CAAA;QAC7C,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;gBACxB,WAAW,EAAE,MAAM;gBACnB,SAAS;aACV,CAAC,CAAA;QACJ,CAAC;QAED,mEAAmE;QACnE,MAAM,gBAAgB,GAAG;YACvB,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC;gBAC7C,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;oBACrD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;oBACrC,CAAC,CAAC,QAAQ;gBACZ,CAAC,CAAC,SAAS;YACb,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;YAC7E,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACpE,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACtE,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YACxF,wFAAwF;YACxF,0CAA0C;YAC1C,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;YACxE,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YACtF,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;SACpE,CAAA;QAED,MAAM,aAAa,GACjB,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,gBAAgB,CAAC,aAAa,CAAA;QACvF,MAAM,eAAe,GACnB,MAAM,CAAC,UAAU,CAAC,eAAe,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,gBAAgB,CAAC,eAAe,CAAA;QAC/F,MAAM,WAAW,GACf,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,gBAAgB,CAAC,WAAW,CAAA;QACnF,MAAM,aAAa,GACjB,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,gBAAgB,CAAC,aAAa,CAAA;QACvF,MAAM,qBAAqB,GACzB,MAAM,CAAC,UAAU,CAAC,qBAAqB,EAAE,UAAU,CAAC,UAAU,CAAC;YAC/D,gBAAgB,CAAC,qBAAqB,CAAA;QACxC,MAAM,YAAY,GAChB,MAAM,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,gBAAgB,CAAC,YAAY,CAAA;QACzF,MAAM,mBAAmB,GACvB,MAAM,CAAC,UAAU,CAAC,mBAAmB,EAAE,UAAU,CAAC,UAAU,CAAC;YAC7D,gBAAgB,CAAC,mBAAmB,CAAA;QACtC,MAAM,UAAU,GACd,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,gBAAgB,CAAC,UAAU,CAAA;QAEjF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YACrE,MAAM,0BAA0B,CAC9B,qEAAqE,CACtE,CAAA;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YACvE,MAAM,0BAA0B,CAC9B,kFAAkF,CACnF,CAAA;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,0BAA0B,CAC9B,2DAA2D,CAC5D,CAAA;YACH,CAAC;YAED,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,0BAA0B,CAC9B,6DAA6D,CAC9D,CAAA;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAC7E,MAAM,0BAA0B,CAC9B,wFAAwF,CACzF,CAAA;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YACpE,MAAM,0BAA0B,CAAC,2DAA2D,CAAC,CAAA;QAC/F,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YAC3E,MAAM,0BAA0B,CAC9B,kEAAkE,CACnE,CAAA;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAClE,MAAM,0BAA0B,CAAC,yDAAyD,CAAC,CAAA;QAC7F,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;QACtC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAA;QAClD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;QAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,wBAAwB,EAAE,CAAA;QAC/B,IAAI,CAAC,qBAAqB,EAAE,CAAA;QAE5B,8EAA8E;QAC9E,8EAA8E;QAC9E,mEAAmE;QACnE,IACE,IAAI,CAAC,wBAAwB;YAC7B,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,kBAAkB,CAAC,MAAM,EAC9D,CAAC;YACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;QACjF,CAAC;QAED,gGAAgG;QAChG,IAAI,2BAA2B,KAAK,KAAK;YAAE,IAAI,CAAC,0BAA0B,EAAE,CAAA;QAE5E,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,IAAI,CAAA;QACnC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IAED;;OAEG;IACO,wBAAwB;QAChC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;QAErF,IAAI,UAAU,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,yCAAyC,UAAU,CAAC,MAAM,QAAQ,CAAC,CAAA;YAC9F,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,wCAAwC,SAAS,CAAC,MAAM,QAAQ,CAAC,CAAA;YAC5F,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QACD,IAAI,gBAAgB,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,+CAA+C,gBAAgB,CAAC,MAAM,QAAQ,CAC/E,CAAA;YACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QACD,IAAI,WAAW,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,0CAA0C,WAAW,CAAC,MAAM,QAAQ,CACrE,CAAA;YACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,sCAAsC,OAAO,CAAC,MAAM,QAAQ,CAAC,CAAA;YACxF,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,mCAAmC,KAAK,CAAC,MAAM,QAAQ,CAAC,CAAA;YACnF,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QAED,uCAAuC;QACvC,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,2CAA2C,IAAI,CAAC,OAAO,gBAAgB,IAAI,CAAC,QAAQ,EAAE,CACvF,CAAA;YACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QAED,iCAAiC;QACjC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,IAAI,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;gBAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,qCAAqC,CAAC,CAAA;gBACjE,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;YACD,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YAChE,IACE,OAAO,aAAa,KAAK,QAAQ;gBACjC,aAAa,KAAK,QAAQ;gBAC1B,IAAI,CAAC,MAAM,KAAK,aAAa,EAC7B,CAAC;gBACD,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;gBAC1D,IAAI,IAAI,CAAC,aAAa,KAAK,cAAc,EAAE,CAAC;oBAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,sDAAsD,CAAC,CAAA;oBAClF,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;gBACvC,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,4CAA4C,CAAC,CAAA;gBACxE,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;YACD,IAAI,IAAI,CAAC,eAAe,EAAE,MAAM,KAAK,EAAE,EAAE,CAAC;gBACxC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,8CAA8C,IAAI,CAAC,eAAgB,CAAC,MAAM,QAAQ,CACnF,CAAA;gBACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;gBAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,kDAAkD,CAAC,CAAA;gBAC9E,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;YACD,IAAI,IAAI,CAAC,qBAAqB,EAAE,MAAM,KAAK,EAAE,EAAE,CAAC;gBAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,oDACE,IAAI,CAAC,qBAAsB,CAAC,MAC9B,QAAQ,CACT,CAAA;gBACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,yCAAyC,CAAC,CAAA;gBACrE,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,gDAAgD,CAAC,CAAA;gBAC5E,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;YACD,IAAI,IAAI,CAAC,mBAAmB,EAAE,MAAM,KAAK,EAAE,EAAE,CAAC;gBAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,kDAAkD,IAAI,CAAC,mBAAoB,CAAC,MAAM,QAAQ,CAC3F,CAAA;gBACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBAClC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,uCAAuC,CAAC,CAAA;gBACnE,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACO,0BAA0B;QAClC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAEhE,kCAAkC;QAClC,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,kBAAkB,CAAC,MAAM,EAAE,CAAC;YACnE,aAAa;YACb,IAAI,MAAM,GAAG,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBACvF,kDAAkD;gBAClD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAA;gBAC1D,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,kBAAkB,CAAC,MAAM,EAAE,CAAC;YACnE,aAAa;YACb,MAAM,SAAS,GAAG,mBAAmB,GAAG,iBAAiB,CAAA;YACzD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,uCAAuC;gBACvC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBACxC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,qBAAqB,SAAS,mDAAmD,IAAI,CAAC,SAAS,CAAC,MAAM,QAAQ,CAC/G,CAAA;oBACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;gBACvC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,SAAS,CAAA;gBACtD,IAAI,YAAY,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;oBAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,sEAAsE,YAAY,wBAAwB,CAC3G,CAAA;oBACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;gBACvC,CAAC;gBACD,6CAA6C;gBAC7C,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;oBAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,2EAA2E,IAAI,CAAC,QAAQ,EAAE,CAC3F,CAAA;oBACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;gBACvC,CAAC;YACH,CAAC;YACD,iBAAiB;YACjB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBACnD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,+CAA+C,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;gBACzF,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QACD,uCAAuC;QACvC,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,aAAa,CAAC,YAAY,EAAE,CAAC;YAC/D,IAAI,KAAK,GAAG,KAAK,CAAA;YACjB,IAAI,QAAQ,GAAG,EAAE,CAAA;YAEjB,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,mBAAmB,CAAC,EAAE,CAAC;gBACjD,QAAQ,IAAI,gBAAgB,UAAU,CAAC,SAAS,CAAC,eAAe,UAAU,CACxE,mBAAmB,CACpB,GAAG,CAAA;gBACJ,KAAK,GAAG,IAAI,CAAA;YACd,CAAC;YACD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACxB,iIAAiI;gBACjI,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;oBAC5B,QAAQ,IAAI,iBAAiB,UAAU,gBAAgB,CAAA;oBACvD,KAAK,GAAG,IAAI,CAAA;gBACd,CAAC;gBACD,IAAI,SAAS,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;oBAC1B,QAAQ,IAAI,gBAAgB,UAAU,CACpC,SAAS,CACV,6CAA6C,SAAS,CAAC,MAAM,SAAS,CAAA;oBACvE,KAAK,GAAG,IAAI,CAAA;gBACd,CAAC;gBACD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3C,QAAQ,IAAI,YAAY,UAAU,CAAC,KAAK,CAAC,eAAe,UAAU,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;oBACxF,KAAK,GAAG,IAAI,CAAA;gBACd,CAAC;YACH,CAAC;YACD,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAA;gBAC5D,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,iBAA8B;QAC7C,IAAI,cAAc,GAAG,iBAAiB,CAAC,QAAQ,CAAA;QAC/C,6DAA6D;QAC7D,gDAAgD;QAChD,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACtE,IACE,OAAO,mBAAmB,KAAK,QAAQ;YACvC,mBAAmB,KAAK,QAAQ;YAChC,IAAI,CAAC,MAAM,KAAK,mBAAmB,EACnC,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;YAC5D,cAAc,GAAG,cAAc,GAAG,UAAU,CAAA;QAC9C,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAE9B,MAAM,CAAC,GAAG,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACpE,MAAM,WAAW,GAAG,cAAc,GAAG,CAAC,CAAA;QACtC,MAAM,WAAW,GAAG,cAAc,GAAG,CAAC,CAAA;QAEtC,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,4CAA4C,QAAQ,oBAAoB,WAAW,EAAE,CACtF,CAAA;YACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QAED,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,4CAA4C,QAAQ,oBAAoB,WAAW,EAAE,CACtF,CAAA;YACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QAED,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;YAChD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,2DAA2D,QAAQ,wBAAwB,IAAI,CAAC,MAAM,CAAC,KAAK,CAC1G,aAAa,CACd,EAAE,CACJ,CAAA;YACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;IACH,CAAC;IAED;;OAEG;IACI,eAAe;QACpB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,mEAAmE,CACpE,CAAA;YACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QACD,IAAI,WAAmB,CAAA;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAC5D,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAA;QAElD,IAAI,eAAe,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;YACrC,WAAW,GAAG,IAAI,CAAC,aAAc,CAAA;QACnC,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,GAAG,eAAe,EAAE,CAAC;YAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,GAAG,eAAe,CAAA;YACnD,MAAM,2BAA2B,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;YAEpF,MAAM,eAAe,GACnB,CAAC,IAAI,CAAC,aAAc,GAAG,YAAY,CAAC,GAAG,eAAe,GAAG,2BAA2B,CAAA;YACtF,WAAW,GAAG,CAAC,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,aAAc,CAAA;QAC/F,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,GAAG,eAAe,GAAG,IAAI,CAAC,OAAO,CAAA;YACnD,MAAM,2BAA2B,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;YAEpF,MAAM,eAAe,GACnB,CAAC,IAAI,CAAC,aAAc,GAAG,YAAY,CAAC,GAAG,eAAe,GAAG,2BAA2B,CAAA;YACtF,WAAW;gBACT,IAAI,CAAC,aAAc,GAAG,eAAe,GAAG,QAAQ;oBAC9C,CAAC,CAAC,IAAI,CAAC,aAAc,GAAG,eAAe;oBACvC,CAAC,CAAC,QAAQ,CAAA;QAChB,CAAC;QACD,OAAO,WAAW,CAAA;IACpB,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,0BAA0B,CAAC,gDAAgD,CAAC,CAAA;QACpF,CAAC;QACD,OAAO,mBAAmB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IAC7D,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAC,QAAgB;QAC1B,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;QAC1D,MAAM,WAAW,GAAG,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAA;QAErD,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QAC3C,OAAO,WAAW,GAAG,YAAY,CAAA;IACnC,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,WAAmB;QAC9C,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,QAAQ,CAAA;QACpD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAA;QAEhD,MAAM,EAAE,qBAAqB,EAAE,cAAc,EAAE,kBAAkB,EAAE,WAAW,EAAE,GAC9E,WAAW,CAAC,kBAAkB,EAAE,CAAA;QAElC,mCAAmC;QACnC,IAAI,aAAa,GAAG,WAAW,GAAG,cAAc,EAAE,CAAC;YACjD,OAAO,QAAQ,CAAA;QACjB,CAAC;QAED,+BAA+B;QAC/B,IAAI,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;YACtD,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;YACtD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,QAAQ,CAAA;YAC9C,MAAM,OAAO,GAAG,mBAAmB,CAAC,aAAa,EAAE,WAAW,CAAC,CAAA;YAE/D,IAAI,YAAY,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,EAAE,CAAC;gBAClD,MAAM,QAAQ,GAAG,CAAC,WAAW,GAAG,CAAC,WAAW,GAAG,cAAc,CAAC,CAAC,GAAG,WAAW,CAAA;gBAC7E,OAAO,aAAa,GAAG,QAAQ,CAAA;YACjC,CAAC;QACH,CAAC;QAED,qBAAqB;QACrB,OAAO,aAAa,GAAG,WAAW,GAAG,cAAc,CAAA;IACrD,CAAC;IAED;;;OAGG;IACI,oBAAoB,CAAC,WAAmB;QAC7C,OAAO,mBAAmB,CAAC,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAAA;IAClF,CAAC;IAED;;OAEG;IACH,GAAG;QACD,MAAM,QAAQ,GAAG;YACf,IAAI,CAAC,UAAU;YACf,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,QAAQ,CAAC,KAAK;YACnB,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,gBAAgB;YACrB,IAAI,CAAC,WAAW;YAChB,IAAI,CAAC,SAAS;YACd,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC;YACtC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC;YAClC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC;YACpC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC;YACnC,qBAAqB,CAAC,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC;YACjD,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,KAAK;SACX,CAAA;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,aAAc,CAAC,CAAC,CAAA;QAC3D,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,eAAgB,CAAC,CAAA;QACtC,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAY,CAAC,CAAC,CAAA;YACvD,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,aAAc,CAAC,CAAC,CAAA;QAC3D,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAsB,CAAC,CAAA;QAC5C,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAa,CAAC,CAAA;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAoB,CAAC,CAAA;QAC1C,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAW,CAAC,CAAC,CAAA;QACxD,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED;;OAEG;IACH,IAAI;;QACF,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,MAAA,IAAI,CAAC,KAAK,EAAC,IAAI,QAAJ,IAAI,GAAK,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAe,EAAA;YAC7E,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;QACxB,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IACpD,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAA;IACjC,CAAC;IAED;;;;OAIG;IACH,yBAAyB,CAAC,iBAA8B;QACtD,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,aAAa,CAAC,WAAW,EAAE,CAAC;YAC9D,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,wDAAwD,CAAC,CAAA;YACpF,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,kBAAkB,CAAC,MAAM,EAAE,CAAC;YACnE,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,qEAAqE,CACtE,CAAA;YACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAA;QAC9B,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAA;QACxE,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAA;QAChE,MAAM,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACtE,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAA;QAErB,iGAAiG;QACjG,IAAI,GAAY,CAAA;QAEhB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAChD,8FAA8F;YAC9F,MAAM,WAAW,GAAG,WAAW,CAAC,iBAAiB,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACzF,IAAI,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;YAC9D,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAA;YAC1B,iBAAiB;YACjB,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACf,CAAC,GAAG,MAAM,CAAA;YACZ,CAAC;YACD,GAAG,GAAG,SAAS,GAAG,MAAM,GAAG,CAAC,CAAA;QAC9B,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAChD,qCAAqC;YACrC,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;YACpD,IAAI,GAAG,GAAG,QAAQ,EAAE,CAAC;gBACnB,GAAG,GAAG,QAAQ,CAAA;YAChB,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACvD,iDAAiD;YACjD,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAA;YACpD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAA;YAC1B,iBAAiB;YACjB,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACf,CAAC,GAAG,MAAM,CAAA;YACZ,CAAC;YACD,GAAG,GAAG,SAAS,GAAG,MAAM,GAAG,CAAC,CAAA;QAC9B,CAAC;aAAM,CAAC;YACN,gBAAgB;YAChB,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,OAAO,EAAE,CAAC;gBAC5D,GAAG,GAAG,MAAM,GAAG,SAAS,CAAA;YAC1B,CAAC;iBAAM,CAAC;gBACN,GAAG,GAAG,SAAS,GAAG,MAAM,CAAA;YAC1B,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAA;QAC3C,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;YACb,GAAG,GAAG,GAAG,GAAG,QAAQ,IAAI,GAAG,CAAA;QAC7B,CAAC;QAED,IAAI,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAC5B,GAAG,GAAG,iBAAiB,CAAA;QACzB,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;IAC/B,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe;YACzC,CAAC,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE;YACvD,CAAC,CAAC,EAAE,CAAA;QACN,MAAM,QAAQ,GAAe;YAC3B,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;YACvC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;YACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAClC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;YACrC,gBAAgB,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC;YACnD,GAAG,cAAc;YACjB,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;YACzC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;YACrC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;YACxC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;YAChC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC;YACpC,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;YAClC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;YACtC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;YACrC,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;YACjC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;SAC9B,CAAA;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,aAAc,CAAC,CAAA;QAC3D,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,WAAY,CAAC,CAAA;YACrD,QAAQ,CAAC,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,aAAc,CAAC,CAAA;QAC3D,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,qBAAqB,GAAG,UAAU,CAAC,IAAI,CAAC,qBAAsB,CAAC,CAAA;QAC1E,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,YAAa,CAAC,CAAA;QACxD,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,mBAAmB,GAAG,UAAU,CAAC,IAAI,CAAC,mBAAoB,CAAC,CAAA;QACtE,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,UAAW,CAAC,CAAA;QACrD,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED;;;OAGG;IACO,qBAAqB;QAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACpE,OAAM;QACR,CAAC;QACD,MAAM,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QAClE,IAAI,kBAAkB,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;YACpE,OAAM;QACR,CAAC;QACD,MAAM,aAAa,GAAG,UAAU,CAAC,8BAA8B,CAAC,CAAA;QAChE,MAAM,uBAAuB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAA;QAC9C,IAAI,KAAK,IAAI,uBAAuB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,EAAE,CAAC;YACpF,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,4CAA4C,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,UAAU,CACzF,IAAI,CAAC,SAAS,CACf,GAAG,CACL,CAAA;YACD,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;IACH,CAAC;IAED;;OAEG;IACI,QAAQ;QACb,IAAI,IAAI,GAAG,EAAE,CAAA;QACb,IAAI,CAAC;YACH,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,GAAG,OAAO,CAAA;QAChB,CAAC;QACD,IAAI,EAAE,GAAG,EAAE,CAAA;QACX,IAAI,CAAC;YACH,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,EAAE,GAAG,OAAO,CAAA;QACd,CAAC;QACD,IAAI,QAAQ,GAAG,uBAAuB,IAAI,CAAC,MAAM,SAAS,IAAI,GAAG,CAAA;QACjE,QAAQ,IAAI,MAAM,EAAE,kBAAkB,IAAI,CAAC,aAAa,IAAI,MAAM,EAAE,CAAA;QACpE,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED;;;;;OAKG;IACO,SAAS,CAAC,GAAW;QAC7B,OAAO,GAAG,GAAG,KAAK,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAA;IACtC,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/header/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/header/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { MerklePatriciaTrie } from '@feelyourprotocol/mpt';
|
|
2
|
+
import { type Common } from '@feelyourprotocol/common';
|
|
3
|
+
import type { TypedTransaction } from '@feelyourprotocol/tx';
|
|
4
|
+
import type { CLRequest, CLRequestType, PrefixedHexString, Withdrawal } from '@feelyourprotocol/util';
|
|
5
|
+
import type { BlockHeaderBytes, HeaderData } from './types.ts';
|
|
6
|
+
/**
|
|
7
|
+
* Returns a 0x-prefixed hex number string from a hex string or string integer.
|
|
8
|
+
* @param {string} input string to check, convert, and return
|
|
9
|
+
*/
|
|
10
|
+
export declare const numberToHex: (input?: string) => PrefixedHexString | undefined;
|
|
11
|
+
/**
|
|
12
|
+
* Converts the canonical byte-array representation of a header into structured {@link HeaderData}.
|
|
13
|
+
* @param values Header field values in canonical order
|
|
14
|
+
* @returns Parsed header data
|
|
15
|
+
*/
|
|
16
|
+
export declare function valuesArrayToHeaderData(values: BlockHeaderBytes): HeaderData;
|
|
17
|
+
/**
|
|
18
|
+
* Retrieves the header difficulty as a bigint if the field is provided.
|
|
19
|
+
* @param headerData Header data potentially containing a difficulty value
|
|
20
|
+
* @returns Difficulty as bigint, or `null` when unset
|
|
21
|
+
*/
|
|
22
|
+
export declare function getDifficulty(headerData: HeaderData): bigint | null;
|
|
23
|
+
/**
|
|
24
|
+
* Counts the total number of blob commitments contained in the provided transactions.
|
|
25
|
+
* @param transactions Transactions to inspect for blob data
|
|
26
|
+
* @returns Number of blob versioned hashes referenced
|
|
27
|
+
*/
|
|
28
|
+
export declare const getNumBlobs: (transactions: TypedTransaction[]) => number;
|
|
29
|
+
/**
|
|
30
|
+
* Approximates `factor * e ** (numerator / denominator)` using Taylor expansion
|
|
31
|
+
*/
|
|
32
|
+
export declare const fakeExponential: (factor: bigint, numerator: bigint, denominator: bigint) => bigint;
|
|
33
|
+
/**
|
|
34
|
+
* Returns the blob gas price depending upon the `excessBlobGas` value
|
|
35
|
+
* @param excessBlobGas
|
|
36
|
+
* @param common
|
|
37
|
+
*/
|
|
38
|
+
export declare const computeBlobGasPrice: (excessBlobGas: bigint, common: Common) => bigint;
|
|
39
|
+
/**
|
|
40
|
+
* Returns the withdrawals trie root for array of Withdrawal.
|
|
41
|
+
* @param wts array of Withdrawal to compute the root of
|
|
42
|
+
* @param emptyTrie Optional trie used to generate the root
|
|
43
|
+
*/
|
|
44
|
+
export declare function genWithdrawalsTrieRoot(wts: Withdrawal[], emptyTrie?: MerklePatriciaTrie): Promise<Uint8Array<ArrayBufferLike>>;
|
|
45
|
+
/**
|
|
46
|
+
* Returns the txs trie root for array of TypedTransaction
|
|
47
|
+
* @param txs array of TypedTransaction to compute the root of
|
|
48
|
+
* @param emptyTrie Optional trie used to generate the root
|
|
49
|
+
*/
|
|
50
|
+
export declare function genTransactionsTrieRoot(txs: TypedTransaction[], emptyTrie?: MerklePatriciaTrie): Promise<Uint8Array<ArrayBufferLike>>;
|
|
51
|
+
/**
|
|
52
|
+
* Returns the requests trie root for an array of CLRequests
|
|
53
|
+
* @param requests - an array of CLRequests
|
|
54
|
+
* @param sha256Function Hash function used to derive the requests root
|
|
55
|
+
* @param emptyTrie optional empty trie used to generate the root
|
|
56
|
+
* @returns a 32 byte Uint8Array representing the requests trie root
|
|
57
|
+
*/
|
|
58
|
+
export declare function genRequestsRoot(requests: CLRequest<CLRequestType>[], sha256Function: (msg: Uint8Array) => Uint8Array): Uint8Array<ArrayBufferLike>;
|
|
59
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAapD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC/F,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC9D;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAa,QAAQ,MAAM,KAAG,iBAAiB,GAAG,SAWzE,CAAA;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,gBAAgB,GAAG,UAAU,CA+D5E;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAMnE;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAI,cAAc,gBAAgB,EAAE,WAQ3D,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,EAAE,WAAW,MAAM,EAAE,aAAa,MAAM,WAWrF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,eAAe,MAAM,EAAE,QAAQ,MAAM,WAMxE,CAAA;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,SAAS,CAAC,EAAE,kBAAkB,wCAM7F;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,gBAAgB,EAAE,EACvB,SAAS,CAAC,EAAE,kBAAkB,wCAO/B;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,SAAS,CAAC,aAAa,CAAC,EAAE,EACpC,cAAc,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,UAAU,+BAuBhD"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { MerklePatriciaTrie } from '@feelyourprotocol/mpt';
|
|
2
|
+
import { RLP } from '@feelyourprotocol/rlp';
|
|
3
|
+
import { Blob4844Tx } from '@feelyourprotocol/tx';
|
|
4
|
+
import { BIGINT_0, BIGINT_1, EthereumJSErrorWithoutCode, TypeOutput, concatBytes, isHexString, toType, } from '@feelyourprotocol/util';
|
|
5
|
+
import {} from '@feelyourprotocol/common';
|
|
6
|
+
/**
|
|
7
|
+
* Returns a 0x-prefixed hex number string from a hex string or string integer.
|
|
8
|
+
* @param {string} input string to check, convert, and return
|
|
9
|
+
*/
|
|
10
|
+
export const numberToHex = function (input) {
|
|
11
|
+
if (input === undefined)
|
|
12
|
+
return undefined;
|
|
13
|
+
if (!isHexString(input)) {
|
|
14
|
+
const regex = new RegExp(/^\d+$/); // test to make sure input contains only digits
|
|
15
|
+
if (!regex.test(input)) {
|
|
16
|
+
const msg = `Cannot convert string to hex string. numberToHex only supports 0x-prefixed hex or integer strings but the given string was: ${input}`;
|
|
17
|
+
throw EthereumJSErrorWithoutCode(msg);
|
|
18
|
+
}
|
|
19
|
+
return `0x${parseInt(input, 10).toString(16)}`;
|
|
20
|
+
}
|
|
21
|
+
return input;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Converts the canonical byte-array representation of a header into structured {@link HeaderData}.
|
|
25
|
+
* @param values Header field values in canonical order
|
|
26
|
+
* @returns Parsed header data
|
|
27
|
+
*/
|
|
28
|
+
export function valuesArrayToHeaderData(values) {
|
|
29
|
+
const [parentHash, uncleHash, coinbase, stateRoot, transactionsTrie, receiptTrie, logsBloom, difficulty, number, gasLimit, gasUsed, timestamp, extraData, mixHash, nonce, baseFeePerGas, withdrawalsRoot, blobGasUsed, excessBlobGas, parentBeaconBlockRoot, requestsHash, blockAccessListHash, slotNumber,] = values;
|
|
30
|
+
if (values.length > 23) {
|
|
31
|
+
throw EthereumJSErrorWithoutCode(`invalid header. More values than expected were received. Max: 23, got: ${values.length}`);
|
|
32
|
+
}
|
|
33
|
+
if (values.length < 15) {
|
|
34
|
+
throw EthereumJSErrorWithoutCode(`invalid header. Less values than expected were received. Min: 15, got: ${values.length}`);
|
|
35
|
+
}
|
|
36
|
+
return {
|
|
37
|
+
parentHash,
|
|
38
|
+
uncleHash,
|
|
39
|
+
coinbase,
|
|
40
|
+
stateRoot,
|
|
41
|
+
transactionsTrie,
|
|
42
|
+
receiptTrie,
|
|
43
|
+
logsBloom,
|
|
44
|
+
difficulty,
|
|
45
|
+
number,
|
|
46
|
+
gasLimit,
|
|
47
|
+
gasUsed,
|
|
48
|
+
timestamp,
|
|
49
|
+
extraData,
|
|
50
|
+
mixHash,
|
|
51
|
+
nonce,
|
|
52
|
+
baseFeePerGas,
|
|
53
|
+
withdrawalsRoot,
|
|
54
|
+
blobGasUsed,
|
|
55
|
+
excessBlobGas,
|
|
56
|
+
parentBeaconBlockRoot,
|
|
57
|
+
requestsHash,
|
|
58
|
+
blockAccessListHash,
|
|
59
|
+
slotNumber,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Retrieves the header difficulty as a bigint if the field is provided.
|
|
64
|
+
* @param headerData Header data potentially containing a difficulty value
|
|
65
|
+
* @returns Difficulty as bigint, or `null` when unset
|
|
66
|
+
*/
|
|
67
|
+
export function getDifficulty(headerData) {
|
|
68
|
+
const { difficulty } = headerData;
|
|
69
|
+
if (difficulty !== undefined) {
|
|
70
|
+
return toType(difficulty, TypeOutput.BigInt);
|
|
71
|
+
}
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Counts the total number of blob commitments contained in the provided transactions.
|
|
76
|
+
* @param transactions Transactions to inspect for blob data
|
|
77
|
+
* @returns Number of blob versioned hashes referenced
|
|
78
|
+
*/
|
|
79
|
+
export const getNumBlobs = (transactions) => {
|
|
80
|
+
let numBlobs = 0;
|
|
81
|
+
for (const tx of transactions) {
|
|
82
|
+
if (tx instanceof Blob4844Tx) {
|
|
83
|
+
numBlobs += tx.blobVersionedHashes.length;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return numBlobs;
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* Approximates `factor * e ** (numerator / denominator)` using Taylor expansion
|
|
90
|
+
*/
|
|
91
|
+
export const fakeExponential = (factor, numerator, denominator) => {
|
|
92
|
+
let i = BIGINT_1;
|
|
93
|
+
let output = BIGINT_0;
|
|
94
|
+
let numerator_accumulator = factor * denominator;
|
|
95
|
+
while (numerator_accumulator > BIGINT_0) {
|
|
96
|
+
output += numerator_accumulator;
|
|
97
|
+
numerator_accumulator = (numerator_accumulator * numerator) / (denominator * i);
|
|
98
|
+
i++;
|
|
99
|
+
}
|
|
100
|
+
return output / denominator;
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Returns the blob gas price depending upon the `excessBlobGas` value
|
|
104
|
+
* @param excessBlobGas
|
|
105
|
+
* @param common
|
|
106
|
+
*/
|
|
107
|
+
export const computeBlobGasPrice = (excessBlobGas, common) => {
|
|
108
|
+
return fakeExponential(common.param('minBlobGas'), excessBlobGas, common.param('blobGasPriceUpdateFraction'));
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* Returns the withdrawals trie root for array of Withdrawal.
|
|
112
|
+
* @param wts array of Withdrawal to compute the root of
|
|
113
|
+
* @param emptyTrie Optional trie used to generate the root
|
|
114
|
+
*/
|
|
115
|
+
export async function genWithdrawalsTrieRoot(wts, emptyTrie) {
|
|
116
|
+
const trie = emptyTrie ?? new MerklePatriciaTrie();
|
|
117
|
+
for (const [i, wt] of wts.entries()) {
|
|
118
|
+
await trie.put(RLP.encode(i), RLP.encode(wt.raw()));
|
|
119
|
+
}
|
|
120
|
+
return trie.root();
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Returns the txs trie root for array of TypedTransaction
|
|
124
|
+
* @param txs array of TypedTransaction to compute the root of
|
|
125
|
+
* @param emptyTrie Optional trie used to generate the root
|
|
126
|
+
*/
|
|
127
|
+
export async function genTransactionsTrieRoot(txs, emptyTrie) {
|
|
128
|
+
const trie = emptyTrie ?? new MerklePatriciaTrie();
|
|
129
|
+
for (const [i, tx] of txs.entries()) {
|
|
130
|
+
await trie.put(RLP.encode(i), tx.serialize());
|
|
131
|
+
}
|
|
132
|
+
return trie.root();
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Returns the requests trie root for an array of CLRequests
|
|
136
|
+
* @param requests - an array of CLRequests
|
|
137
|
+
* @param sha256Function Hash function used to derive the requests root
|
|
138
|
+
* @param emptyTrie optional empty trie used to generate the root
|
|
139
|
+
* @returns a 32 byte Uint8Array representing the requests trie root
|
|
140
|
+
*/
|
|
141
|
+
export function genRequestsRoot(requests, sha256Function) {
|
|
142
|
+
// Requests should be sorted in monotonically ascending order based on type
|
|
143
|
+
// and whatever internal sorting logic is defined by each request type
|
|
144
|
+
if (requests.length > 1) {
|
|
145
|
+
for (let x = 1; x < requests.length; x++) {
|
|
146
|
+
if (requests[x].type < requests[x - 1].type)
|
|
147
|
+
throw EthereumJSErrorWithoutCode('requests are not sorted in ascending order');
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
// def compute_requests_hash(list):
|
|
151
|
+
// return keccak_256(rlp.encode([rlp.encode(req) for req in list]))
|
|
152
|
+
let flatRequests = new Uint8Array();
|
|
153
|
+
for (const req of requests) {
|
|
154
|
+
if (req.bytes.length > 1) {
|
|
155
|
+
// Only append requests if they have content
|
|
156
|
+
flatRequests = concatBytes(flatRequests, sha256Function(req.bytes));
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return sha256Function(flatRequests);
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './block/index.ts';
|
|
2
|
+
export * from './consensus/index.ts';
|
|
3
|
+
export { type BeaconPayloadJSON, executionPayloadFromBeaconPayload } from './from-beacon-payload.ts';
|
|
4
|
+
export * from './header/index.ts';
|
|
5
|
+
export { genRequestsRoot, genTransactionsTrieRoot, genWithdrawalsTrieRoot, getDifficulty, valuesArrayToHeaderData, } from './helpers.ts';
|
|
6
|
+
export * from './params.ts';
|
|
7
|
+
export * from './types.ts';
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,OAAO,EAAE,KAAK,iBAAiB,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAA;AACpG,cAAc,mBAAmB,CAAA;AACjC,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,sBAAsB,EACtB,aAAa,EACb,uBAAuB,GACxB,MAAM,cAAc,CAAA;AACrB,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./block/index.js";
|
|
2
|
+
export * from "./consensus/index.js";
|
|
3
|
+
export { executionPayloadFromBeaconPayload } from "./from-beacon-payload.js";
|
|
4
|
+
export * from "./header/index.js";
|
|
5
|
+
export { genRequestsRoot, genTransactionsTrieRoot, genWithdrawalsTrieRoot, getDifficulty, valuesArrayToHeaderData, } from "./helpers.js";
|
|
6
|
+
export * from "./params.js";
|
|
7
|
+
export * from "./types.js";
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,OAAO,EAA0B,iCAAiC,EAAE,MAAM,0BAA0B,CAAA;AACpG,cAAc,mBAAmB,CAAA;AACjC,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,sBAAsB,EACtB,aAAa,EACb,uBAAuB,GACxB,MAAM,cAAc,CAAA;AACrB,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAEpD,eAAO,MAAM,WAAW,EAAE,UA4FzB,CAAA"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
export const paramsBlock = {
|
|
2
|
+
/**
|
|
3
|
+
* Frontier/Chainstart
|
|
4
|
+
*/
|
|
5
|
+
1: {
|
|
6
|
+
// gasConfig
|
|
7
|
+
minGasLimit: 5000, // Minimum the gas limit may ever be
|
|
8
|
+
gasLimitBoundDivisor: 1024, // The bound divisor of the gas limit, used in update calculations
|
|
9
|
+
targetBlobGasPerBlock: 0, // Base value needed here since called pre-4844 in BlockHeader.calcNextExcessBlobGas()
|
|
10
|
+
blobGasPerBlob: 0,
|
|
11
|
+
maxBlobGasPerBlock: 0,
|
|
12
|
+
// format
|
|
13
|
+
maxExtraDataSize: 32, // Maximum size extra data may be after Genesis
|
|
14
|
+
// pow
|
|
15
|
+
minimumDifficulty: 131072, // The minimum that the difficulty may ever be
|
|
16
|
+
difficultyBoundDivisor: 2048, // The bound divisor of the difficulty, used in the update calculations
|
|
17
|
+
durationLimit: 13, // The decision boundary on the blocktime duration used to determine whether difficulty should go up or not
|
|
18
|
+
difficultyBombDelay: 0, // the amount of blocks to delay the difficulty bomb with
|
|
19
|
+
},
|
|
20
|
+
/**
|
|
21
|
+
* Byzantium HF Meta EIP
|
|
22
|
+
*/
|
|
23
|
+
609: {
|
|
24
|
+
// pow
|
|
25
|
+
difficultyBombDelay: 3000000, // the amount of blocks to delay the difficulty bomb with
|
|
26
|
+
},
|
|
27
|
+
/**
|
|
28
|
+
* Constantinople HF Meta EIP
|
|
29
|
+
*/
|
|
30
|
+
1013: {
|
|
31
|
+
// pow
|
|
32
|
+
difficultyBombDelay: 5000000, // the amount of blocks to delay the difficulty bomb with
|
|
33
|
+
},
|
|
34
|
+
/**
|
|
35
|
+
* MuirGlacier HF Meta EIP
|
|
36
|
+
*/
|
|
37
|
+
2384: {
|
|
38
|
+
// pow
|
|
39
|
+
difficultyBombDelay: 9000000, // the amount of blocks to delay the difficulty bomb with
|
|
40
|
+
},
|
|
41
|
+
/**
|
|
42
|
+
* Fee market change for ETH 1.0 chain
|
|
43
|
+
*/
|
|
44
|
+
1559: {
|
|
45
|
+
// gasConfig
|
|
46
|
+
baseFeeMaxChangeDenominator: 8, // Maximum base fee change denominator
|
|
47
|
+
elasticityMultiplier: 2, // Maximum block gas target elasticity
|
|
48
|
+
initialBaseFee: 1000000000, // Initial base fee on first EIP1559 block
|
|
49
|
+
},
|
|
50
|
+
/**
|
|
51
|
+
* Difficulty Bomb Delay to December 1st 2021
|
|
52
|
+
*/
|
|
53
|
+
3554: {
|
|
54
|
+
// pow
|
|
55
|
+
difficultyBombDelay: 9500000, // the amount of blocks to delay the difficulty bomb with
|
|
56
|
+
},
|
|
57
|
+
/**
|
|
58
|
+
* Difficulty Bomb Delay to June 2022
|
|
59
|
+
*/
|
|
60
|
+
4345: {
|
|
61
|
+
// pow
|
|
62
|
+
difficultyBombDelay: 10700000, // the amount of blocks to delay the difficulty bomb with
|
|
63
|
+
},
|
|
64
|
+
/**
|
|
65
|
+
* Shard Blob Transactions
|
|
66
|
+
*/
|
|
67
|
+
4844: {
|
|
68
|
+
// gasConfig
|
|
69
|
+
targetBlobGasPerBlock: 393216, // The target blob gas consumed per block
|
|
70
|
+
blobGasPerBlob: 131072, // The base fee for blob gas per blob
|
|
71
|
+
maxBlobGasPerBlock: 786432, // The max blob gas allowable per block
|
|
72
|
+
blobGasPriceUpdateFraction: 3338477, // The denominator used in the exponential when calculating a blob gas price
|
|
73
|
+
// gasPrices
|
|
74
|
+
minBlobGas: 1, // The minimum fee per blob gas
|
|
75
|
+
blobBaseCost: 8192, // EIP-7918: Blob base fee bounded by execution cost (2^13)
|
|
76
|
+
},
|
|
77
|
+
/**
|
|
78
|
+
* Delaying Difficulty Bomb to mid-September 2022
|
|
79
|
+
*/
|
|
80
|
+
5133: {
|
|
81
|
+
// pow
|
|
82
|
+
difficultyBombDelay: 11400000, // the amount of blocks to delay the difficulty bomb with
|
|
83
|
+
},
|
|
84
|
+
/**
|
|
85
|
+
* Blob throughput increase
|
|
86
|
+
*/
|
|
87
|
+
7691: {
|
|
88
|
+
// gasConfig
|
|
89
|
+
targetBlobGasPerBlock: 786432, // The target blob gas consumed per block
|
|
90
|
+
maxBlobGasPerBlock: 1179648, // The max blob gas allowable per block
|
|
91
|
+
blobGasPriceUpdateFraction: 5007716, // The denominator used in the exponential when calculating a blob gas price
|
|
92
|
+
},
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=params.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/params.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAe;IACrC;;OAEG;IACH,CAAC,EAAE;QACD,YAAY;QACZ,WAAW,EAAE,IAAI,EAAE,oCAAoC;QACvD,oBAAoB,EAAE,IAAI,EAAE,kEAAkE;QAC9F,qBAAqB,EAAE,CAAC,EAAE,sFAAsF;QAChH,cAAc,EAAE,CAAC;QACjB,kBAAkB,EAAE,CAAC;QACrB,SAAS;QACT,gBAAgB,EAAE,EAAE,EAAE,+CAA+C;QACrE,MAAM;QACN,iBAAiB,EAAE,MAAM,EAAE,8CAA8C;QACzE,sBAAsB,EAAE,IAAI,EAAE,uEAAuE;QACrG,aAAa,EAAE,EAAE,EAAE,2GAA2G;QAC9H,mBAAmB,EAAE,CAAC,EAAE,yDAAyD;KAClF;IACD;;OAEG;IACH,GAAG,EAAE;QACH,MAAM;QACN,mBAAmB,EAAE,OAAO,EAAE,yDAAyD;KACxF;IACD;;OAEG;IACH,IAAI,EAAE;QACJ,MAAM;QACN,mBAAmB,EAAE,OAAO,EAAE,yDAAyD;KACxF;IACD;;OAEG;IACH,IAAI,EAAE;QACJ,MAAM;QACN,mBAAmB,EAAE,OAAO,EAAE,yDAAyD;KACxF;IACD;;OAEG;IACH,IAAI,EAAE;QACJ,YAAY;QACZ,2BAA2B,EAAE,CAAC,EAAE,sCAAsC;QACtE,oBAAoB,EAAE,CAAC,EAAE,sCAAsC;QAC/D,cAAc,EAAE,UAAU,EAAE,0CAA0C;KACvE;IACD;;OAEG;IACH,IAAI,EAAE;QACJ,MAAM;QACN,mBAAmB,EAAE,OAAO,EAAE,yDAAyD;KACxF;IACD;;OAEG;IACH,IAAI,EAAE;QACJ,MAAM;QACN,mBAAmB,EAAE,QAAQ,EAAE,yDAAyD;KACzF;IACD;;OAEG;IACH,IAAI,EAAE;QACJ,YAAY;QACZ,qBAAqB,EAAE,MAAM,EAAE,yCAAyC;QACxE,cAAc,EAAE,MAAM,EAAE,qCAAqC;QAC7D,kBAAkB,EAAE,MAAM,EAAE,uCAAuC;QACnE,0BAA0B,EAAE,OAAO,EAAE,4EAA4E;QACjH,YAAY;QACZ,UAAU,EAAE,CAAC,EAAE,+BAA+B;QAC9C,YAAY,EAAE,IAAI,EAAE,2DAA2D;KAChF;IACD;;OAEG;IACH,IAAI,EAAE;QACJ,MAAM;QACN,mBAAmB,EAAE,QAAQ,EAAE,yDAAyD;KACzF;IACD;;OAEG;IACH,IAAI,EAAE;QACJ,YAAY;QACZ,qBAAqB,EAAE,MAAM,EAAE,yCAAyC;QACxE,kBAAkB,EAAE,OAAO,EAAE,uCAAuC;QACpE,0BAA0B,EAAE,OAAO,EAAE,4EAA4E;KAClH;CACF,CAAA"}
|