Anchor batch 20261005

22879 signal snapshots, hashed into one root and written to Arbitrum One. The list below is the batch's exact composition, in the order the tree was built — that order is part of the root.

Merkle root
0x2fe724f9fe21578e344b60fe062939096dd10e68c3c46eef159574882b4633eb
Network
Arbitrum One
Anchored
Oct 5, 2026 04:30 UTC
Last re-checked against the chain
Oct 10, 2026 — the root on chain was read back and rebuilt from our rows that day

Read the root from a node rather than from us — roots(20261005):

curl -s https://arb1.arbitrum.io/rpc -X POST -H 'Content-Type: application/json' \
  --data '{"jsonrpc":"2.0","id":1,"method":"eth_call","params":[{"to":"0xceacc40cf7b7c797d990dce7164fcccd87dad693","data":"0xc2b40ae4000000000000000000000000000000000000000000000000000000000135288d"},"latest"]}'

Every leaf in this batch

22879 total · page 35 of 229

Leaves are numbered from zero in tree order. Each one is computed here by hashing that signal's stored snapshot — not copied out of a column — so a row whose bytes changed after the anchor shows up as a mismatch. Open a signal to see those bytes and the branch that carries it to the root.

3400 VELVETUSDT Jun 28
689dd47c99288c20243f7b1c8752ab21fa2e2fe0f80e7137831909f9a430a31b
3401 MARSCOINUSDT Oct 4
955f19996dfc198aacd84749bdceba72acb2b44bcc11a7a9fc15acb2311fdcd1
3402 MOVRUSDT Oct 4
50867bdb81de069c00d1fe1514506cd08305666a7ff2827afdb2f463495dd26a
3403 PHAUSDT Oct 4
73c1e85c3a2fc27bcfa0d310c85e28a79ead5004be9738ff10544fef9c6bb1aa
3404 AXSUSDT Oct 4
ea96265979e320b8628ef5a13feeabc59f0bd21b7ead3dea1272ed2c6f44aa91
3405 AXSUSDT Oct 4
ba1beac8cca4f15ae0936fa8ba524183742dd7574a54904cbab13f6f2f577a25
3406 MANAUSDT Oct 4
2ab2acb384ca25ba018f92d95053b1e7c4ab5d2cbd1cf4556cad892506f07106
3407 ATOMUSDT Oct 4
c0f956bbad162bb23ffa221a50461a174ed31376a4cea0cf40a196fb5eb67b41
3408 BEAMXUSDT Oct 4
f92000ff5c5160249da6808b55c3f738c9c6768b1131aa18a503a7f3fecdb12d
3409 NOMUSDT Oct 4
d842585bb0483bf230a998e389aeff4fd38b40c208aef85b1df0a8ec89f3f385
3410 BNBUSDT Oct 4
14ebb32de2ec32f036180736ef1128c4326359598e1c4ac36bd5c4b267ff8af6
3411 SUPERUSDT Oct 4
1209bf51ca9cd36211d86dc3f0427d977e2219cc361b410b5a9c8f2010cb3656
3412 ZRXUSDT Oct 4
b049d72a51ffaf11543fff31dd33359d95fc7baa7113a5b11b06666bfccf21cf
3413 ZRXUSDT Oct 4
a950b70a62ef820bbf70597b8f63110384b05147c6b86fa3026628da57edc03f
3414 CTUSDT Oct 4
1c235575744f0208738b405e9926f95638c9a94eaec87ee6da0bec4e1b55981f
3415 JTOUSDT Oct 4
58c15732a5faa0542248114b6f79b4c60498e71a3458d31ce1f699dd90f7987f
3416 LYNUSDT Oct 4
94789e2b6fc991d8120b6e32edbc62f9329563aad379c634a749b7ba579488b0
3417 KITEUSDT Oct 4
def32b1147db9e48e67a134f09d4f8c72213a3f76df975be53b61947fa682200
3418 USUSDT Oct 4
6043083aa473fa492c26520605bb271b25f9b04a751b7bd0d0d3ca9f8ddc4e74
3419 MAGICUSDT Oct 4
3d646522809a533921c7fe94c37f59b0325ec2f229fbdc9aa86417c49dc0d9de
3420 LYNUSDT Oct 4
bb0d8fe85e821155de63b19756ddd3897be369364a5aa0374284ae26bf719356
3421 LYNUSDT Oct 4
b71b7c7929c9c7b625c5c21c3e2b76f8c6fb839e17e71d2dcc445836bd385005
3422 ONTUSDT Oct 4
48cd3771e50482ae9be4e28f5cb06d1cae0febebd6e9968f2342cb459ff58b98
3423 ZAMAUSDT Oct 4
6a459d858d0b2bc4e0661bb7ddedd5f545d94e6fb2f3e00a2b9c4048bbfa7b20
3424 STRKUSDT Oct 4
a9bc113122c15788ed015a028f157f70ab457bf9864d5798da0c05133bfb4204
3425 USUSDT Oct 4
e5b9991e0a4da0260a47fa4a032e7212b3d73a8cdb9d1ee30491ca2b84b40811
3426 USUSDT Oct 4
b5de62923eea702b9f2a661c291b3daa9b1ea2b6c308c2ec4bcae2193546d743
3427 USUSDT Oct 4
e2a453d26b291512bd4d2eed118953ede6d955a90b1446d408c89b9ced2a842e
3428 USUSDT Oct 4
133168a330d1e2580fff218920b4543d39332255f92682e7f64d95c70a241d4c
3429 USUSDT Oct 4
455712dbcf8900aafbf0a5cf99123447bb82131033da4efef467604a58557a03
3430 SUSHIUSDT Oct 4
a776b8bc06a4841e45e083c156b9d4001c65f03e0c5fe9b1cb70242818bb64be
3431 TRXUSDT Oct 4
bacd88dd142f8ecb21c0a4efa3df993c79002794c917914114334ddb818abc46
3432 FILUSDT Oct 4
dd5ddddec545842ddfe20fd71b4ac770453e018f39147bc9180f257e21e692d9
3433 LINKUSDT Oct 4
8ab123a400166a79ecf21dd4e71a69aa95508c25a8089913135ff26fa649dfae
3434 ARBUSDT Oct 4
3edcdb8696b67dec54fdbd4b321a897333c44f947db11b4fddbf014f533a72a5
3435 ATOMUSDT Oct 3
6b9a4b96dc3c238f3369707fb8b8061e3187b64c677c7a8250320d7acef84385
3436 APTUSDT Oct 3
9998bba5b796a003f8a523f09280b1000a3d63892102c4afe080374f5f91e21e
3437 LTCUSDT Oct 3
8cd49c7315f4fd4f58127e2f05699fb4d971ec3a71df75f1bc08e3be11539fa4
3438 ATOMUSDT Oct 3
ee70d850bfac59d7a6694a0b3fadcca59154c49de4eb4590b24798790123c3bc
3439 APTUSDT Oct 3
a6099eff61c33ceed086b050eaa85042d78684140a5e3768bf9f4f24fa38bd8e
3440 ARBUSDT Oct 3
aa2e80dfc84b2dde22f3123707fd6fab43425444e39cafa8b94bfa900b924cd1
3441 INJUSDT Oct 3
09ad0493c20e21c4e3d6358c114715a7093ed3e4e5d2e37b6499b9621551b768
3442 LTCUSDT Oct 2
3bbe0148923ba81f225c01e66853ba92896c3258996221a3a659dba3e3e0406a
3443 FILUSDT Oct 2
ee1b2c46ae44e40084176857724a22e55cb5bb290249302898e5a730ab47a0c8
3444 OPUSDT Oct 2
2f63d86c47c806d52cc7ad120b1ca8554f39c9dd78d3164f1ba8dfdc3ffbc840
3445 SUIUSDT Oct 2
5e60b6059afb72de542e576dbff001e9e800e52391a1574f3e6b6d59b70c25e7
3446 DOGEUSDT Oct 2
d313ae9269e0a80b84c875940f7eed9f41d3f9c210445e35d663f68666e38b0e
3447 UNIUSDT Oct 2
3c9b9416850dec98d4bdae25a3ea5ba295a6408783ea4fc9c771ade330ea8f40
3448 APTUSDT Oct 2
afa768782062c7a725b3a42ca491db483f674d7db6e6926fc1fa4fe9e5e41728
3449 TRXUSDT Oct 1
4750a08db30c8971a590585bec67834593766d7a3d00c57c86cb8bdbecbc25b0
3450 ADAUSDT Oct 1
575f8cce611e9d26affd8b6ed3852bbb7a01d3743922ca50e608e27d12533de8
3451 FETUSDT Oct 1
757c1727e917b8871be559edd743bf2324295b052070702cc468e8a82c029b7d
3452 BTCUSDT Oct 1
ff0944fd46265afd32d54c37dca1547ab69e083b510aeed5258b4e321d76d5b2
3453 UNIUSDT Oct 1
f3f185470a859fabd0d4b0c6728b88a571317cc1fcba0a40eff4ba154614a3ca
3454 XRPUSDT Oct 1
0654812ae2507ece68be1bb40b7dc83b15e16a53f199ebc8fec96907bcb6b78f
3455 INJUSDT Oct 1
dcbd51ada649aaebce6faa50244b8ba75313c7a5b347fdd6c1e2a3d86a53b319
3456 BTCUSDT Oct 1
5a26fff1a48d068b3a4b74df60902d6a5e9fe4f9a03d4367ba456e154c3eb2a6
3457 BNBUSDT Sep 30
0d12ade6b9d3afe088aa15490f6e7fcf351d467f103aaaaa2409941f88be241a
3458 SUIUSDT Sep 30
a566ffa9708e1be7e3acac2a66763b3ac4dce18296499b11be4016d77660ed7f
3459 PEPEUSDT Sep 30
b48c44305333a6ca13d0e10151586d8a73c287a23ce9071afa7e7a599f84d1a2
3460 ETHUSDT Sep 30
44b23efaed249c4be9600ee28906f84d917a5223004cb95309853982f407fcaf
3461 AAVEUSDT Sep 30
a8bd88b04376576d55d71b83c770b6a6369001bcef74ead0f3b1a04a58318ef4
3462 PEPEUSDT Sep 30
8591108f855362df2956e5fe1a9287811263a41b589fb8b431567471a97936c2
3463 POLUSDT Sep 30
8d45a13c0b940ad2bca9cf085f56835028cdc03e1d38fff3ed1052a753ce720e
3464 INJUSDT Sep 30
f3917321ee2f06f5bdf099197fa6d730de1f317951fd31fe53903d00231d159a
3465 NEARUSDT Sep 30
aa4ca4987a5647c12f4b89933ab635445baacdcf7bc3d9f2780fb5cbf955aba5
3466 TRXUSDT Sep 29
1fd6a8412f0975d2329254f480580a215d3563965aff372739dfdfe331e5c524
3467 NEARUSDT Sep 29
e78f3a70cc052e6b16fa1858771bc4831807f96e6e348fc1dd58bfb8560899db
3468 XLMUSDT Sep 29
e0134d0b54b17b0d9ec6c766c1794c9845ab6f957463ef33c73ee378c465c3ed
3469 BTCUSDT Sep 29
3086d7b320c5ab4fa64ae052f837cfbadf905ec51b60c628b69370ff9135e7b3
3470 SUIUSDT Sep 29
1bb33f71dcca8d7367ed5daf17591c663e378128e446de5da1786b7c44138011
3471 AAVEUSDT Sep 29
9bf5424155fefd362ccb25fe1e78e4035907b50988d74fe3624a9cf7cd5651df
3472 AVAXUSDT Sep 29
5382b023af3d454aeb1d9e5a3762146662d91d3e63358a7ed4f153f7bfebdb03
3473 ETHUSDT Sep 28
afc4e85b7832de15ecf7918a7b36e7e383f6ebba194b2f1939159933f9b0a4b9
3474 POLUSDT Sep 28
8515fff12638a807fbb9279db12167f84c275787c8b9887d0c9845e1871b5882
3475 SUIUSDT Sep 28
41963f8ee29f60438714c129eddac0505ba5eb5953d2b8053c1d9ab4b17b2e60
3476 FILUSDT Sep 28
decc37a14b7f837856bf15217c420f4fe6435761f93f94c49652f89c4b9dc694
3477 OPUSDT Sep 28
a5145d3972b75ab463de142e4c95fea94b195ca8e985cd7936cacf361438b582
3478 APTUSDT Sep 28
bb35d7f7a064f274a92e9c73da8fa10a90422cf76bcb2a6586ba36c22ff4caa4
3479 AVAXUSDT Sep 27
869ff54fb889cb50aa55776909965c2f44f62f49fb773f99ccdedaf2656b1029
3480 XLMUSDT Sep 27
1506e82ceb38f26bbe329b021d314285b02375e6f960f63a703289b4f469a541
3481 ARBUSDT Sep 27
0f39f1c272b604f44c07718bf47e4ecb23beb25e6d23a60fab5673b94475ba9e
3482 APTUSDT Sep 27
0f9b528661d37e71b2e43a8b9ff976d99d5ac8b6ccbf92f0d6151de7e18b8721
3483 XLMUSDT Sep 27
ff4ec35f8519c4ff92cc0f4e2171aeb1383f0044fe4794a0c660072146596e29
3484 DOGEUSDT Sep 27
842a5f07c64a1450b5f27e561b2e548ac718eece028eee428cd792cb54d03ace
3485 ADAUSDT Sep 27
4cf380f85a94234c50bd8506aec90a31a1647e03d40a0f701d59a9c06d7d6529
3486 ARBUSDT Sep 27
71e3b07c3cb1fd083c40b24185448c771b464841fd98f544c4687f52dbfe553f
3487 AVAXUSDT Sep 26
3350dd82593f9a4ef94f4b76632022222be479996ef38f3d469ccb4507f8f4cd
3488 APTUSDT Sep 26
da806ea438cd25acf96099087992ebd2727f0e531107bcf247d844380778f5ad
3489 UNIUSDT Sep 26
be99a4ae16df7756be46d4eebbbba7c1aa9cf11789f051719916bd1d722d5f51
3490 ARBUSDT Sep 26
03e6873fe4b9fe468cb2f3dfd7edd9c43e9cb81e23336f969231e5090445c4e9
3491 ETHUSDT Sep 26
b372f6ba6dbde5eda665fc4edbcde826306aa8e016d5833716e9843b2d50f027
3492 AVAXUSDT Sep 25
466132b0d05024b618864a4ab562e97414291a43664b9a73880e26519f1f637c
3493 INJUSDT Sep 25
64d30954e2c663e4328e4e4c754ebf7876b875ba64029a62da2bffc20d6248d8
3494 ARBUSDT Sep 25
6c032014f9413447f7995d10fabb4cff1be7db4830bf52bf46b531d8f57ea0fd
3495 AVAXUSDT Sep 25
10626b46720e7d19192b17d8d9f466ffffa6ebddfb0d77a1868e77c419e311dd
3496 ATOMUSDT Sep 25
c66d8a0c58bc2ec85971ab6341d672a8022af7e21bdf737a051834bcce7de895
3497 INJUSDT Sep 25
182429cc564b2dfb07a64ba4edf71e3a30973f5bb395772747d3b11244a9b9e9
3498 ETHUSDT Sep 25
ea93c2c88ceb0dd54d47c8ca3c1e6dd8da407dbca4595603d80429d1ad0e7174
3499 AVAXUSDT Sep 25
3ae1dd2aa6d4f0870f0e6986e5a8cfcb1cdd1ee7c46da28fe97bf09be813ab2e

Rebuild the root yourself

Take the leaves above in this order and fold them pairwise. The specification is published word for word on the verification page; the short version is below, and the rule that catches most reimplementations is the odd node — it is carried up unchanged, never paired with itself.

import hashlib

level = [bytes.fromhex(h) for h in leaves]      # in the order listed above
while len(level) > 1:
    nxt = [hashlib.sha256(level[i] + level[i + 1]).digest()
           for i in range(0, len(level) - 1, 2)]
    if len(level) % 2:
        nxt.append(level[-1])                   # promoted, never duplicated
    level = nxt

print('0x' + level[0].hex())