Skip to content

Commit

Permalink
chore(deps): bump express from 4.19.2 to 4.21.0 in /docs (#7078)
Browse files Browse the repository at this point in the history
Bumps [express](https://github.com/expressjs/express) from 4.19.2 to 4.21.0.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/4.21.0/History.md)
- [Commits](expressjs/express@4.19.2...4.21.0)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  • Loading branch information
dependabot[bot] authored Sep 16, 2024
1 parent d3d61af commit 67a35f8
Showing 1 changed file with 50 additions and 45 deletions.
95 changes: 50 additions & 45 deletions docs/yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -3136,10 +3136,10 @@ binary-extensions@^2.0.0:
resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"
integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==

body-parser@1.20.2:
version "1.20.2"
resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd"
integrity sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==
body-parser@1.20.3:
version "1.20.3"
resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.3.tgz#1953431221c6fb5cd63c4b36d53fab0928e548c6"
integrity sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==
dependencies:
bytes "3.1.2"
content-type "~1.0.5"
Expand All @@ -3149,7 +3149,7 @@ body-parser@1.20.2:
http-errors "2.0.0"
iconv-lite "0.4.24"
on-finished "2.4.1"
qs "6.11.0"
qs "6.13.0"
raw-body "2.5.2"
type-is "~1.6.18"
unpipe "1.0.0"
Expand Down Expand Up @@ -4454,6 +4454,11 @@ encodeurl@~1.0.2:
resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==

encodeurl@~2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58"
integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==

enhanced-resolve@^5.15.0:
version "5.15.1"
resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.15.1.tgz#384391e025f099e67b4b00bfd7f0906a408214e1"
Expand Down Expand Up @@ -4659,36 +4664,36 @@ execa@^5.0.0:
strip-final-newline "^2.0.0"

express@^4.17.3:
version "4.19.2"
resolved "https://registry.yarnpkg.com/express/-/express-4.19.2.tgz#e25437827a3aa7f2a827bc8171bbbb664a356465"
integrity sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==
version "4.21.0"
resolved "https://registry.yarnpkg.com/express/-/express-4.21.0.tgz#d57cb706d49623d4ac27833f1cbc466b668eb915"
integrity sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==
dependencies:
accepts "~1.3.8"
array-flatten "1.1.1"
body-parser "1.20.2"
body-parser "1.20.3"
content-disposition "0.5.4"
content-type "~1.0.4"
cookie "0.6.0"
cookie-signature "1.0.6"
debug "2.6.9"
depd "2.0.0"
encodeurl "~1.0.2"
encodeurl "~2.0.0"
escape-html "~1.0.3"
etag "~1.8.1"
finalhandler "1.2.0"
finalhandler "1.3.1"
fresh "0.5.2"
http-errors "2.0.0"
merge-descriptors "1.0.1"
merge-descriptors "1.0.3"
methods "~1.1.2"
on-finished "2.4.1"
parseurl "~1.3.3"
path-to-regexp "0.1.7"
path-to-regexp "0.1.10"
proxy-addr "~2.0.7"
qs "6.11.0"
qs "6.13.0"
range-parser "~1.2.1"
safe-buffer "5.2.1"
send "0.18.0"
serve-static "1.15.0"
send "0.19.0"
serve-static "1.16.2"
setprototypeof "1.2.0"
statuses "2.0.1"
type-is "~1.6.18"
Expand Down Expand Up @@ -4783,13 +4788,13 @@ fill-range@^7.0.1:
dependencies:
to-regex-range "^5.0.1"

finalhandler@1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32"
integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==
finalhandler@1.3.1:
version "1.3.1"
resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.1.tgz#0c575f1d1d324ddd1da35ad7ece3df7d19088019"
integrity sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==
dependencies:
debug "2.6.9"
encodeurl "~1.0.2"
encodeurl "~2.0.0"
escape-html "~1.0.3"
on-finished "2.4.1"
parseurl "~1.3.3"
Expand Down Expand Up @@ -6345,10 +6350,10 @@ memfs@^3.1.2, memfs@^3.4.3:
dependencies:
fs-monkey "^1.0.4"

merge-descriptors@1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==
merge-descriptors@1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5"
integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==

merge-stream@^2.0.0:
version "2.0.0"
Expand Down Expand Up @@ -7426,10 +7431,10 @@ path-parse@^1.0.7:
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==

path-to-regexp@0.1.7:
version "0.1.7"
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==
path-to-regexp@0.1.10:
version "0.1.10"
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.10.tgz#67e9108c5c0551b9e5326064387de4763c4d5f8b"
integrity sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==

path-to-regexp@2.2.1:
version "2.2.1"
Expand Down Expand Up @@ -7854,12 +7859,12 @@ pupa@^3.1.0:
dependencies:
escape-goat "^4.0.0"

qs@6.11.0:
version "6.11.0"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a"
integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==
qs@6.13.0:
version "6.13.0"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.0.tgz#6ca3bd58439f7e245655798997787b0d88a51906"
integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==
dependencies:
side-channel "^1.0.4"
side-channel "^1.0.6"

queue-microtask@^1.2.2:
version "1.2.3"
Expand Down Expand Up @@ -8458,10 +8463,10 @@ semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.5.4:
dependencies:
lru-cache "^6.0.0"

send@0.18.0:
version "0.18.0"
resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be"
integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==
send@0.19.0:
version "0.19.0"
resolved "https://registry.yarnpkg.com/send/-/send-0.19.0.tgz#bbc5a388c8ea6c048967049dbeac0e4a3f09d7f8"
integrity sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==
dependencies:
debug "2.6.9"
depd "2.0.0"
Expand Down Expand Up @@ -8511,15 +8516,15 @@ serve-index@^1.9.1:
mime-types "~2.1.17"
parseurl "~1.3.2"

serve-static@1.15.0:
version "1.15.0"
resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540"
integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==
serve-static@1.16.2:
version "1.16.2"
resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.2.tgz#b6a5343da47f6bdd2673848bf45754941e803296"
integrity sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==
dependencies:
encodeurl "~1.0.2"
encodeurl "~2.0.0"
escape-html "~1.0.3"
parseurl "~1.3.3"
send "0.18.0"
send "0.19.0"

set-function-length@^1.2.1:
version "1.2.1"
Expand Down Expand Up @@ -8581,7 +8586,7 @@ shelljs@^0.8.5:
interpret "^1.0.0"
rechoir "^0.6.2"

side-channel@^1.0.4:
side-channel@^1.0.6:
version "1.0.6"
resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2"
integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==
Expand Down

1 comment on commit 67a35f8

@github-actions
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for some benchmarks.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold.

Benchmark suite Current: 67a35f8 Previous: 43b41af Ratio
Object set x1000 76.037 ns/op 24.715 ns/op 3.08
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 11.893 us/op 3.0420 us/op 3.91
Full benchmark results
Benchmark suite Current: 67a35f8 Previous: 43b41af Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.9548 ms/op 1.7832 ms/op 1.10
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 57.529 us/op 36.853 us/op 1.56
BLS verify - blst 854.28 us/op 927.74 us/op 0.92
BLS verifyMultipleSignatures 3 - blst 1.2249 ms/op 1.2962 ms/op 0.95
BLS verifyMultipleSignatures 8 - blst 1.8411 ms/op 2.0796 ms/op 0.89
BLS verifyMultipleSignatures 32 - blst 5.1824 ms/op 4.5001 ms/op 1.15
BLS verifyMultipleSignatures 64 - blst 11.087 ms/op 8.3271 ms/op 1.33
BLS verifyMultipleSignatures 128 - blst 17.348 ms/op 16.035 ms/op 1.08
BLS deserializing 10000 signatures 702.38 ms/op 623.07 ms/op 1.13
BLS deserializing 100000 signatures 6.6374 s/op 6.2119 s/op 1.07
BLS verifyMultipleSignatures - same message - 3 - blst 885.00 us/op 956.27 us/op 0.93
BLS verifyMultipleSignatures - same message - 8 - blst 1.0260 ms/op 1.1133 ms/op 0.92
BLS verifyMultipleSignatures - same message - 32 - blst 1.6022 ms/op 1.7016 ms/op 0.94
BLS verifyMultipleSignatures - same message - 64 - blst 2.4360 ms/op 2.5854 ms/op 0.94
BLS verifyMultipleSignatures - same message - 128 - blst 4.0513 ms/op 4.0572 ms/op 1.00
BLS aggregatePubkeys 32 - blst 18.643 us/op 18.040 us/op 1.03
BLS aggregatePubkeys 128 - blst 66.392 us/op 63.091 us/op 1.05
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 61.068 ms/op 43.673 ms/op 1.40
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 47.860 ms/op 37.826 ms/op 1.27
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 31.751 ms/op 31.944 ms/op 0.99
getSlashingsAndExits - default max 89.435 us/op 66.499 us/op 1.34
getSlashingsAndExits - 2k 322.52 us/op 303.61 us/op 1.06
proposeBlockBody type=full, size=empty 5.8207 ms/op 4.9962 ms/op 1.17
isKnown best case - 1 super set check 297.00 ns/op 632.00 ns/op 0.47
isKnown normal case - 2 super set checks 389.00 ns/op 627.00 ns/op 0.62
isKnown worse case - 16 super set checks 482.00 ns/op 608.00 ns/op 0.79
InMemoryCheckpointStateCache - add get delete 3.3240 us/op 4.3440 us/op 0.77
updateUnfinalizedPubkeys - updating 10 pubkeys 1.1974 ms/op 1.1996 ms/op 1.00
updateUnfinalizedPubkeys - updating 100 pubkeys 3.8551 ms/op 3.5370 ms/op 1.09
updateUnfinalizedPubkeys - updating 1000 pubkeys 53.989 ms/op 44.288 ms/op 1.22
validate api signedAggregateAndProof - struct 1.4993 ms/op 1.5278 ms/op 0.98
validate gossip signedAggregateAndProof - struct 1.4625 ms/op 1.4146 ms/op 1.03
validate gossip attestation - vc 640000 1.0263 ms/op 961.54 us/op 1.07
batch validate gossip attestation - vc 640000 - chunk 32 135.72 us/op 115.95 us/op 1.17
batch validate gossip attestation - vc 640000 - chunk 64 124.66 us/op 98.965 us/op 1.26
batch validate gossip attestation - vc 640000 - chunk 128 128.76 us/op 95.559 us/op 1.35
batch validate gossip attestation - vc 640000 - chunk 256 123.50 us/op 92.941 us/op 1.33
pickEth1Vote - no votes 1.2884 ms/op 859.60 us/op 1.50
pickEth1Vote - max votes 8.5926 ms/op 5.8384 ms/op 1.47
pickEth1Vote - Eth1Data hashTreeRoot value x2048 16.728 ms/op 17.289 ms/op 0.97
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 25.150 ms/op 19.356 ms/op 1.30
pickEth1Vote - Eth1Data fastSerialize value x2048 637.68 us/op 365.72 us/op 1.74
pickEth1Vote - Eth1Data fastSerialize tree x2048 3.8137 ms/op 3.2114 ms/op 1.19
bytes32 toHexString 773.00 ns/op 565.00 ns/op 1.37
bytes32 Buffer.toString(hex) 293.00 ns/op 423.00 ns/op 0.69
bytes32 Buffer.toString(hex) from Uint8Array 564.00 ns/op 511.00 ns/op 1.10
bytes32 Buffer.toString(hex) + 0x 322.00 ns/op 423.00 ns/op 0.76
Object access 1 prop 0.26900 ns/op 0.31900 ns/op 0.84
Map access 1 prop 0.15600 ns/op 0.31700 ns/op 0.49
Object get x1000 7.2150 ns/op 5.0370 ns/op 1.43
Map get x1000 8.6980 ns/op 5.7570 ns/op 1.51
Object set x1000 76.037 ns/op 24.715 ns/op 3.08
Map set x1000 45.994 ns/op 18.873 ns/op 2.44
Return object 10000 times 0.41790 ns/op 0.29400 ns/op 1.42
Throw Error 10000 times 4.1460 us/op 2.6542 us/op 1.56
toHex 224.06 ns/op 107.66 ns/op 2.08
Buffer.from 205.36 ns/op 101.25 ns/op 2.03
shared Buffer 150.15 ns/op 71.231 ns/op 2.11
fastMsgIdFn sha256 / 200 bytes 3.4360 us/op 1.9550 us/op 1.76
fastMsgIdFn h32 xxhash / 200 bytes 447.00 ns/op 394.00 ns/op 1.13
fastMsgIdFn h64 xxhash / 200 bytes 428.00 ns/op 436.00 ns/op 0.98
fastMsgIdFn sha256 / 1000 bytes 8.7100 us/op 5.8530 us/op 1.49
fastMsgIdFn h32 xxhash / 1000 bytes 564.00 ns/op 515.00 ns/op 1.10
fastMsgIdFn h64 xxhash / 1000 bytes 429.00 ns/op 507.00 ns/op 0.85
fastMsgIdFn sha256 / 10000 bytes 82.247 us/op 48.673 us/op 1.69
fastMsgIdFn h32 xxhash / 10000 bytes 2.2400 us/op 1.8610 us/op 1.20
fastMsgIdFn h64 xxhash / 10000 bytes 1.3570 us/op 1.2950 us/op 1.05
send data - 1000 256B messages 20.355 ms/op 10.548 ms/op 1.93
send data - 1000 512B messages 25.013 ms/op 13.514 ms/op 1.85
send data - 1000 1024B messages 37.352 ms/op 20.822 ms/op 1.79
send data - 1000 1200B messages 40.793 ms/op 23.949 ms/op 1.70
send data - 1000 2048B messages 49.433 ms/op 29.278 ms/op 1.69
send data - 1000 4096B messages 55.439 ms/op 27.408 ms/op 2.02
send data - 1000 16384B messages 143.38 ms/op 61.569 ms/op 2.33
send data - 1000 65536B messages 436.38 ms/op 250.65 ms/op 1.74
enrSubnets - fastDeserialize 64 bits 1.9370 us/op 1.1100 us/op 1.75
enrSubnets - ssz BitVector 64 bits 576.00 ns/op 512.00 ns/op 1.13
enrSubnets - fastDeserialize 4 bits 246.00 ns/op 333.00 ns/op 0.74
enrSubnets - ssz BitVector 4 bits 541.00 ns/op 510.00 ns/op 1.06
prioritizePeers score -10:0 att 32-0.1 sync 2-0 284.15 us/op 125.67 us/op 2.26
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 276.22 us/op 135.07 us/op 2.04
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 458.11 us/op 268.63 us/op 1.71
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 491.54 us/op 352.13 us/op 1.40
prioritizePeers score 0:0 att 64-1 sync 4-1 1.1039 ms/op 534.32 us/op 2.07
array of 16000 items push then shift 1.8168 us/op 1.2356 us/op 1.47
LinkedList of 16000 items push then shift 9.4370 ns/op 7.2980 ns/op 1.29
array of 16000 items push then pop 160.25 ns/op 77.521 ns/op 2.07
LinkedList of 16000 items push then pop 8.3820 ns/op 6.2250 ns/op 1.35
array of 24000 items push then shift 2.6315 us/op 1.8743 us/op 1.40
LinkedList of 24000 items push then shift 9.6110 ns/op 6.3970 ns/op 1.50
array of 24000 items push then pop 207.47 ns/op 106.76 ns/op 1.94
LinkedList of 24000 items push then pop 8.6980 ns/op 6.3010 ns/op 1.38
intersect bitArray bitLen 8 7.4520 ns/op 5.3550 ns/op 1.39
intersect array and set length 8 89.856 ns/op 39.151 ns/op 2.30
intersect bitArray bitLen 128 33.589 ns/op 26.374 ns/op 1.27
intersect array and set length 128 1.0303 us/op 577.23 ns/op 1.78
bitArray.getTrueBitIndexes() bitLen 128 2.7120 us/op 2.0530 us/op 1.32
bitArray.getTrueBitIndexes() bitLen 248 4.6470 us/op 3.7300 us/op 1.25
bitArray.getTrueBitIndexes() bitLen 512 10.583 us/op 6.8290 us/op 1.55
Buffer.concat 32 items 1.2650 us/op 1.0180 us/op 1.24
Uint8Array.set 32 items 2.4060 us/op 1.9760 us/op 1.22
Buffer.copy 2.7950 us/op 2.1100 us/op 1.32
Uint8Array.set - with subarray 4.1140 us/op 2.6970 us/op 1.53
Uint8Array.set - without subarray 2.2110 us/op 1.9270 us/op 1.15
getUint32 - dataview 360.00 ns/op 394.00 ns/op 0.91
getUint32 - manual 336.00 ns/op 330.00 ns/op 1.02
Set add up to 64 items then delete first 3.7301 us/op 1.7654 us/op 2.11
OrderedSet add up to 64 items then delete first 5.7754 us/op 2.7350 us/op 2.11
Set add up to 64 items then delete last 3.9665 us/op 2.0352 us/op 1.95
OrderedSet add up to 64 items then delete last 6.7082 us/op 3.0222 us/op 2.22
Set add up to 64 items then delete middle 3.9669 us/op 2.0205 us/op 1.96
OrderedSet add up to 64 items then delete middle 8.0739 us/op 4.4228 us/op 1.83
Set add up to 128 items then delete first 7.3771 us/op 3.9971 us/op 1.85
OrderedSet add up to 128 items then delete first 11.563 us/op 6.2002 us/op 1.86
Set add up to 128 items then delete last 8.7732 us/op 3.8567 us/op 2.27
OrderedSet add up to 128 items then delete last 11.968 us/op 5.8257 us/op 2.05
Set add up to 128 items then delete middle 7.6071 us/op 3.8589 us/op 1.97
OrderedSet add up to 128 items then delete middle 20.500 us/op 11.379 us/op 1.80
Set add up to 256 items then delete first 15.471 us/op 7.8049 us/op 1.98
OrderedSet add up to 256 items then delete first 23.948 us/op 12.260 us/op 1.95
Set add up to 256 items then delete last 15.504 us/op 7.5688 us/op 2.05
OrderedSet add up to 256 items then delete last 24.304 us/op 11.542 us/op 2.11
Set add up to 256 items then delete middle 14.650 us/op 7.5225 us/op 1.95
OrderedSet add up to 256 items then delete middle 55.968 us/op 34.009 us/op 1.65
transfer serialized Status (84 B) 1.5870 us/op 1.5360 us/op 1.03
copy serialized Status (84 B) 1.4100 us/op 1.3250 us/op 1.06
transfer serialized SignedVoluntaryExit (112 B) 1.7050 us/op 1.7470 us/op 0.98
copy serialized SignedVoluntaryExit (112 B) 1.6920 us/op 1.4370 us/op 1.18
transfer serialized ProposerSlashing (416 B) 2.3210 us/op 2.2840 us/op 1.02
copy serialized ProposerSlashing (416 B) 2.4890 us/op 2.4280 us/op 1.03
transfer serialized Attestation (485 B) 2.2130 us/op 2.3740 us/op 0.93
copy serialized Attestation (485 B) 2.3790 us/op 2.4100 us/op 0.99
transfer serialized AttesterSlashing (33232 B) 2.3100 us/op 2.4320 us/op 0.95
copy serialized AttesterSlashing (33232 B) 10.012 us/op 5.1540 us/op 1.94
transfer serialized Small SignedBeaconBlock (128000 B) 3.9740 us/op 2.9330 us/op 1.35
copy serialized Small SignedBeaconBlock (128000 B) 30.126 us/op 15.060 us/op 2.00
transfer serialized Avg SignedBeaconBlock (200000 B) 4.1760 us/op 2.6850 us/op 1.56
copy serialized Avg SignedBeaconBlock (200000 B) 50.531 us/op 12.269 us/op 4.12
transfer serialized BlobsSidecar (524380 B) 6.4090 us/op 2.6250 us/op 2.44
copy serialized BlobsSidecar (524380 B) 201.13 us/op 115.78 us/op 1.74
transfer serialized Big SignedBeaconBlock (1000000 B) 7.6070 us/op 2.9470 us/op 2.58
copy serialized Big SignedBeaconBlock (1000000 B) 330.40 us/op 126.11 us/op 2.62
pass gossip attestations to forkchoice per slot 3.1659 ms/op 2.2525 ms/op 1.41
forkChoice updateHead vc 100000 bc 64 eq 0 563.32 us/op 370.70 us/op 1.52
forkChoice updateHead vc 600000 bc 64 eq 0 4.4731 ms/op 2.2925 ms/op 1.95
forkChoice updateHead vc 1000000 bc 64 eq 0 8.1875 ms/op 3.9781 ms/op 2.06
forkChoice updateHead vc 600000 bc 320 eq 0 5.2354 ms/op 2.3253 ms/op 2.25
forkChoice updateHead vc 600000 bc 1200 eq 0 4.3318 ms/op 2.3392 ms/op 1.85
forkChoice updateHead vc 600000 bc 7200 eq 0 8.1833 ms/op 2.8654 ms/op 2.86
forkChoice updateHead vc 600000 bc 64 eq 1000 13.557 ms/op 8.8416 ms/op 1.53
forkChoice updateHead vc 600000 bc 64 eq 10000 12.384 ms/op 9.4236 ms/op 1.31
forkChoice updateHead vc 600000 bc 64 eq 300000 29.918 ms/op 11.726 ms/op 2.55
computeDeltas 500000 validators 300 proto nodes 5.0484 ms/op 2.8711 ms/op 1.76
computeDeltas 500000 validators 1200 proto nodes 5.5573 ms/op 2.8834 ms/op 1.93
computeDeltas 500000 validators 7200 proto nodes 5.7036 ms/op 2.8902 ms/op 1.97
computeDeltas 750000 validators 300 proto nodes 8.8402 ms/op 4.3962 ms/op 2.01
computeDeltas 750000 validators 1200 proto nodes 10.324 ms/op 4.3092 ms/op 2.40
computeDeltas 750000 validators 7200 proto nodes 9.2244 ms/op 4.2734 ms/op 2.16
computeDeltas 1400000 validators 300 proto nodes 15.819 ms/op 9.7922 ms/op 1.62
computeDeltas 1400000 validators 1200 proto nodes 13.258 ms/op 8.0614 ms/op 1.64
computeDeltas 1400000 validators 7200 proto nodes 13.027 ms/op 7.9139 ms/op 1.65
computeDeltas 2100000 validators 300 proto nodes 17.536 ms/op 14.074 ms/op 1.25
computeDeltas 2100000 validators 1200 proto nodes 17.687 ms/op 12.412 ms/op 1.43
computeDeltas 2100000 validators 7200 proto nodes 16.916 ms/op 12.121 ms/op 1.40
altair processAttestation - 250000 vs - 7PWei normalcase 3.0650 ms/op 1.3925 ms/op 2.20
altair processAttestation - 250000 vs - 7PWei worstcase 4.0015 ms/op 2.0903 ms/op 1.91
altair processAttestation - setStatus - 1/6 committees join 115.74 us/op 68.407 us/op 1.69
altair processAttestation - setStatus - 1/3 committees join 209.06 us/op 133.63 us/op 1.56
altair processAttestation - setStatus - 1/2 committees join 289.28 us/op 207.40 us/op 1.39
altair processAttestation - setStatus - 2/3 committees join 411.61 us/op 268.79 us/op 1.53
altair processAttestation - setStatus - 4/5 committees join 551.79 us/op 401.77 us/op 1.37
altair processAttestation - setStatus - 100% committees join 639.04 us/op 472.16 us/op 1.35
altair processBlock - 250000 vs - 7PWei normalcase 7.0703 ms/op 3.8779 ms/op 1.82
altair processBlock - 250000 vs - 7PWei normalcase hashState 32.534 ms/op 27.179 ms/op 1.20
altair processBlock - 250000 vs - 7PWei worstcase 39.121 ms/op 36.271 ms/op 1.08
altair processBlock - 250000 vs - 7PWei worstcase hashState 79.878 ms/op 66.063 ms/op 1.21
phase0 processBlock - 250000 vs - 7PWei normalcase 2.7060 ms/op 1.6267 ms/op 1.66
phase0 processBlock - 250000 vs - 7PWei worstcase 27.839 ms/op 23.133 ms/op 1.20
altair processEth1Data - 250000 vs - 7PWei normalcase 586.07 us/op 251.93 us/op 2.33
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 8.4060 us/op 4.2350 us/op 1.98
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 54.183 us/op 27.233 us/op 1.99
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 14.633 us/op 7.6860 us/op 1.90
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 11.893 us/op 3.0420 us/op 3.91
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 179.63 us/op 126.48 us/op 1.42
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.2503 ms/op 790.76 us/op 1.58
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.6692 ms/op 1.2099 ms/op 1.38
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.6402 ms/op 1.1009 ms/op 1.49
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 5.5861 ms/op 2.8360 ms/op 1.97
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.9315 ms/op 1.1104 ms/op 1.74
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 5.3480 ms/op 2.7365 ms/op 1.95
Tree 40 250000 create 451.24 ms/op 189.23 ms/op 2.38
Tree 40 250000 get(125000) 173.62 ns/op 107.75 ns/op 1.61
Tree 40 250000 set(125000) 956.81 ns/op 529.10 ns/op 1.81
Tree 40 250000 toArray() 23.286 ms/op 17.217 ms/op 1.35
Tree 40 250000 iterate all - toArray() + loop 23.416 ms/op 16.896 ms/op 1.39
Tree 40 250000 iterate all - get(i) 65.773 ms/op 42.047 ms/op 1.56
Array 250000 create 4.2510 ms/op 2.5353 ms/op 1.68
Array 250000 clone - spread 1.5776 ms/op 1.2485 ms/op 1.26
Array 250000 get(125000) 0.46600 ns/op 0.56800 ns/op 0.82
Array 250000 set(125000) 0.47500 ns/op 0.58000 ns/op 0.82
Array 250000 iterate all - loop 86.613 us/op 76.854 us/op 1.13
phase0 afterProcessEpoch - 250000 vs - 7PWei 95.268 ms/op 74.066 ms/op 1.29
Array.fill - length 1000000 3.6345 ms/op 2.4914 ms/op 1.46
Array push - length 1000000 17.561 ms/op 14.499 ms/op 1.21
Array.get 0.28524 ns/op 0.25257 ns/op 1.13
Uint8Array.get 0.43518 ns/op 0.33719 ns/op 1.29
phase0 beforeProcessEpoch - 250000 vs - 7PWei 15.659 ms/op 12.573 ms/op 1.25
altair processEpoch - mainnet_e81889 391.38 ms/op 295.13 ms/op 1.33
mainnet_e81889 - altair beforeProcessEpoch 21.814 ms/op 16.210 ms/op 1.35
mainnet_e81889 - altair processJustificationAndFinalization 15.184 us/op 8.4270 us/op 1.80
mainnet_e81889 - altair processInactivityUpdates 6.9751 ms/op 4.4476 ms/op 1.57
mainnet_e81889 - altair processRewardsAndPenalties 54.156 ms/op 53.097 ms/op 1.02
mainnet_e81889 - altair processRegistryUpdates 2.1180 us/op 1.7330 us/op 1.22
mainnet_e81889 - altair processSlashings 404.00 ns/op 711.00 ns/op 0.57
mainnet_e81889 - altair processEth1DataReset 333.00 ns/op 676.00 ns/op 0.49
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.8054 ms/op 1.6576 ms/op 1.09
mainnet_e81889 - altair processSlashingsReset 3.1270 us/op 2.3620 us/op 1.32
mainnet_e81889 - altair processRandaoMixesReset 6.0840 us/op 2.4550 us/op 2.48
mainnet_e81889 - altair processHistoricalRootsUpdate 600.00 ns/op 669.00 ns/op 0.90
mainnet_e81889 - altair processParticipationFlagUpdates 2.2380 us/op 1.4880 us/op 1.50
mainnet_e81889 - altair processSyncCommitteeUpdates 518.00 ns/op 608.00 ns/op 0.85
mainnet_e81889 - altair afterProcessEpoch 96.516 ms/op 76.785 ms/op 1.26
capella processEpoch - mainnet_e217614 1.0619 s/op 1.0930 s/op 0.97
mainnet_e217614 - capella beforeProcessEpoch 69.560 ms/op 63.415 ms/op 1.10
mainnet_e217614 - capella processJustificationAndFinalization 16.222 us/op 10.968 us/op 1.48
mainnet_e217614 - capella processInactivityUpdates 18.623 ms/op 14.034 ms/op 1.33
mainnet_e217614 - capella processRewardsAndPenalties 235.75 ms/op 254.80 ms/op 0.93
mainnet_e217614 - capella processRegistryUpdates 16.010 us/op 10.334 us/op 1.55
mainnet_e217614 - capella processSlashings 463.00 ns/op 718.00 ns/op 0.64
mainnet_e217614 - capella processEth1DataReset 353.00 ns/op 683.00 ns/op 0.52
mainnet_e217614 - capella processEffectiveBalanceUpdates 13.723 ms/op 5.9587 ms/op 2.30
mainnet_e217614 - capella processSlashingsReset 4.1830 us/op 1.2850 us/op 3.26
mainnet_e217614 - capella processRandaoMixesReset 4.4170 us/op 2.8650 us/op 1.54
mainnet_e217614 - capella processHistoricalRootsUpdate 1.1000 us/op 678.00 ns/op 1.62
mainnet_e217614 - capella processParticipationFlagUpdates 2.4030 us/op 1.3540 us/op 1.77
mainnet_e217614 - capella afterProcessEpoch 256.53 ms/op 197.16 ms/op 1.30
phase0 processEpoch - mainnet_e58758 415.53 ms/op 335.70 ms/op 1.24
mainnet_e58758 - phase0 beforeProcessEpoch 90.694 ms/op 72.663 ms/op 1.25
mainnet_e58758 - phase0 processJustificationAndFinalization 25.875 us/op 11.958 us/op 2.16
mainnet_e58758 - phase0 processRewardsAndPenalties 25.768 ms/op 33.533 ms/op 0.77
mainnet_e58758 - phase0 processRegistryUpdates 10.732 us/op 5.4360 us/op 1.97
mainnet_e58758 - phase0 processSlashings 478.00 ns/op 727.00 ns/op 0.66
mainnet_e58758 - phase0 processEth1DataReset 599.00 ns/op 673.00 ns/op 0.89
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.2678 ms/op 891.90 us/op 1.42
mainnet_e58758 - phase0 processSlashingsReset 3.1530 us/op 2.2120 us/op 1.43
mainnet_e58758 - phase0 processRandaoMixesReset 4.9280 us/op 2.9720 us/op 1.66
mainnet_e58758 - phase0 processHistoricalRootsUpdate 753.00 ns/op 649.00 ns/op 1.16
mainnet_e58758 - phase0 processParticipationRecordUpdates 7.2610 us/op 2.9440 us/op 2.47
mainnet_e58758 - phase0 afterProcessEpoch 85.291 ms/op 63.827 ms/op 1.34
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.9245 ms/op 1.0443 ms/op 1.84
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.9854 ms/op 1.7837 ms/op 1.67
altair processInactivityUpdates - 250000 normalcase 16.805 ms/op 15.606 ms/op 1.08
altair processInactivityUpdates - 250000 worstcase 17.739 ms/op 15.131 ms/op 1.17
phase0 processRegistryUpdates - 250000 normalcase 11.789 us/op 4.5040 us/op 2.62
phase0 processRegistryUpdates - 250000 badcase_full_deposits 310.22 us/op 309.60 us/op 1.00
phase0 processRegistryUpdates - 250000 worstcase 0.5 112.63 ms/op 91.045 ms/op 1.24
altair processRewardsAndPenalties - 250000 normalcase 40.148 ms/op 38.313 ms/op 1.05
altair processRewardsAndPenalties - 250000 worstcase 50.401 ms/op 37.513 ms/op 1.34
phase0 getAttestationDeltas - 250000 normalcase 11.310 ms/op 6.3644 ms/op 1.78
phase0 getAttestationDeltas - 250000 worstcase 9.2176 ms/op 6.3517 ms/op 1.45
phase0 processSlashings - 250000 worstcase 124.83 us/op 87.612 us/op 1.42
altair processSyncCommitteeUpdates - 250000 138.69 ms/op 100.55 ms/op 1.38
BeaconState.hashTreeRoot - No change 466.00 ns/op 490.00 ns/op 0.95
BeaconState.hashTreeRoot - 1 full validator 129.22 us/op 126.57 us/op 1.02
BeaconState.hashTreeRoot - 32 full validator 1.2223 ms/op 1.4440 ms/op 0.85
BeaconState.hashTreeRoot - 512 full validator 17.111 ms/op 15.324 ms/op 1.12
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 185.27 us/op 144.93 us/op 1.28
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.3419 ms/op 1.9587 ms/op 1.20
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 30.294 ms/op 25.340 ms/op 1.20
BeaconState.hashTreeRoot - 1 balances 113.25 us/op 108.89 us/op 1.04
BeaconState.hashTreeRoot - 32 balances 1.0404 ms/op 1.0317 ms/op 1.01
BeaconState.hashTreeRoot - 512 balances 9.9774 ms/op 8.5688 ms/op 1.16
BeaconState.hashTreeRoot - 250000 balances 217.88 ms/op 175.93 ms/op 1.24
aggregationBits - 2048 els - zipIndexesInBitList 35.430 us/op 19.222 us/op 1.84
byteArrayEquals 32 55.530 ns/op 45.820 ns/op 1.21
Buffer.compare 32 19.821 ns/op 15.225 ns/op 1.30
byteArrayEquals 1024 1.7054 us/op 1.2199 us/op 1.40
Buffer.compare 1024 26.320 ns/op 21.735 ns/op 1.21
byteArrayEquals 16384 26.405 us/op 19.337 us/op 1.37
Buffer.compare 16384 209.98 ns/op 190.54 ns/op 1.10
byteArrayEquals 123687377 189.95 ms/op 149.33 ms/op 1.27
Buffer.compare 123687377 6.9366 ms/op 3.6902 ms/op 1.88
byteArrayEquals 32 - diff last byte 52.782 ns/op 46.838 ns/op 1.13
Buffer.compare 32 - diff last byte 17.340 ns/op 15.692 ns/op 1.11
byteArrayEquals 1024 - diff last byte 1.5821 us/op 1.2491 us/op 1.27
Buffer.compare 1024 - diff last byte 25.767 ns/op 23.146 ns/op 1.11
byteArrayEquals 16384 - diff last byte 24.834 us/op 19.830 us/op 1.25
Buffer.compare 16384 - diff last byte 175.89 ns/op 182.96 ns/op 0.96
byteArrayEquals 123687377 - diff last byte 199.38 ms/op 148.90 ms/op 1.34
Buffer.compare 123687377 - diff last byte 10.323 ms/op 5.3309 ms/op 1.94
byteArrayEquals 32 - random bytes 5.5300 ns/op 4.3330 ns/op 1.28
Buffer.compare 32 - random bytes 18.845 ns/op 14.153 ns/op 1.33
byteArrayEquals 1024 - random bytes 5.5840 ns/op 4.2880 ns/op 1.30
Buffer.compare 1024 - random bytes 18.541 ns/op 13.913 ns/op 1.33
byteArrayEquals 16384 - random bytes 5.7800 ns/op 4.3350 ns/op 1.33
Buffer.compare 16384 - random bytes 18.498 ns/op 13.944 ns/op 1.33
byteArrayEquals 123687377 - random bytes 7.2100 ns/op 6.8200 ns/op 1.06
Buffer.compare 123687377 - random bytes 20.530 ns/op 16.200 ns/op 1.27
regular array get 100000 times 44.058 us/op 26.774 us/op 1.65
wrappedArray get 100000 times 36.267 us/op 26.745 us/op 1.36
arrayWithProxy get 100000 times 14.325 ms/op 10.509 ms/op 1.36
ssz.Root.equals 50.112 ns/op 39.950 ns/op 1.25
byteArrayEquals 49.879 ns/op 39.518 ns/op 1.26
Buffer.compare 12.637 ns/op 8.2690 ns/op 1.53
shuffle list - 16384 els 7.6288 ms/op 4.8381 ms/op 1.58
shuffle list - 250000 els 102.86 ms/op 71.407 ms/op 1.44
processSlot - 1 slots 16.307 us/op 14.323 us/op 1.14
processSlot - 32 slots 3.1221 ms/op 2.8882 ms/op 1.08
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 38.572 ms/op 43.380 ms/op 0.89
getCommitteeAssignments - req 1 vs - 250000 vc 2.3027 ms/op 1.7001 ms/op 1.35
getCommitteeAssignments - req 100 vs - 250000 vc 4.3737 ms/op 3.4079 ms/op 1.28
getCommitteeAssignments - req 1000 vs - 250000 vc 4.8683 ms/op 3.6762 ms/op 1.32
findModifiedValidators - 10000 modified validators 276.29 ms/op 224.35 ms/op 1.23
findModifiedValidators - 1000 modified validators 201.21 ms/op 147.07 ms/op 1.37
findModifiedValidators - 100 modified validators 187.04 ms/op 142.55 ms/op 1.31
findModifiedValidators - 10 modified validators 193.05 ms/op 134.22 ms/op 1.44
findModifiedValidators - 1 modified validators 216.70 ms/op 159.09 ms/op 1.36
findModifiedValidators - no difference 207.10 ms/op 154.85 ms/op 1.34
compare ViewDUs 3.9392 s/op 3.4324 s/op 1.15
compare each validator Uint8Array 1.9356 s/op 1.4519 s/op 1.33
compare ViewDU to Uint8Array 1.3466 s/op 644.77 ms/op 2.09
migrate state 1000000 validators, 24 modified, 0 new 716.68 ms/op 599.39 ms/op 1.20
migrate state 1000000 validators, 1700 modified, 1000 new 1.0960 s/op 806.91 ms/op 1.36
migrate state 1000000 validators, 3400 modified, 2000 new 1.0697 s/op 988.12 ms/op 1.08
migrate state 1500000 validators, 24 modified, 0 new 568.04 ms/op 591.46 ms/op 0.96
migrate state 1500000 validators, 1700 modified, 1000 new 795.90 ms/op 805.69 ms/op 0.99
migrate state 1500000 validators, 3400 modified, 2000 new 969.88 ms/op 1.0544 s/op 0.92
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.3700 ns/op 5.9400 ns/op 0.74
state getBlockRootAtSlot - 250000 vs - 7PWei 606.82 ns/op 763.32 ns/op 0.79
computeProposers - vc 250000 7.4646 ms/op 6.6971 ms/op 1.11
computeEpochShuffling - vc 250000 92.951 ms/op 79.611 ms/op 1.17
getNextSyncCommittee - vc 250000 122.53 ms/op 112.24 ms/op 1.09
computeSigningRoot for AttestationData 22.089 us/op 16.462 us/op 1.34
hash AttestationData serialized data then Buffer.toString(base64) 1.5532 us/op 1.1701 us/op 1.33
toHexString serialized data 870.43 ns/op 822.06 ns/op 1.06
Buffer.toString(base64) 161.94 ns/op 130.12 ns/op 1.24
nodejs block root to RootHex using toHex 140.35 ns/op 105.40 ns/op 1.33
nodejs block root to RootHex using toRootHex 96.358 ns/op 70.528 ns/op 1.37
browser block root to RootHex using the deprecated toHexString 225.92 ns/op 205.98 ns/op 1.10
browser block root to RootHex using toHex 179.44 ns/op 168.99 ns/op 1.06
browser block root to RootHex using toRootHex 159.10 ns/op 147.18 ns/op 1.08

Please sign in to comment.