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 12, 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 156 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.

15500 NOMUSDT Jul 1
5d367f311ee1aab724b11f884a62cd02bb4dc3703a9c0d0f8c9a1ea218e3f31a
15501 BTCUSDT Jul 1
967b3d3c28dcc8cf59d2b88b4d7d9960663f6121f74fbd23555eb6c17ae46d6c
15502 IOTAUSDT Jul 1
c2d31b308c9f8fb636f555d61e279e9897cc5cfa6501e3603e098553bf59cce8
15503 BEATUSDT Jul 1
aef3e2b8ad1c7853485c17c79573088e295687c073989015b539c9c1c9447af9
15504 XLMUSDT Jul 1
f4b22a835d706415af7b46974a1b7126407726b8efa28ddfdc8ea34c5d7bfe1c
15505 TACUSDT Jun 30
6fcfadf116bd22cbde3b0890b292619baef9dc3f77e6a981d812b78f2ec9a79a
15506 BNBUSDT Jun 30
0acf413f94e4d2a4a2f71c075dd04e096acc2cdf4c4d57b4d519dcf7b8b288c5
15507 ETHUSDT Jun 30
83bade50e315f588fa14dc8d6ea3de481d2400211604d63ba635bc32fa917d90
15508 XLMUSDT Jun 30
ead5b9a1101de976f5369afc9e3dd04729ade02993df5faee5d2df049a3f90c3
15509 ACTUSDT Jun 30
f9fbd756e2430f1225f3bc41734bc63fa91405671fc3c3b50346434310055d1c
15510 ZECUSDT Jun 29
be15fb715940bb389d4b468d2b25848d284a94a6b6ced29c8ceddba69a8607f5
15511 BASUSDT Jun 29
72063d0e6bfdadd91308a13144424c93fc9cc1b37f005b1b5db2d1c5993f14fa
15512 ATOMUSDT Jun 29
77ddd7dd118e69e487d8f4ed2685d1527736fb83b15388f35499e14f934ef76c
15513 TRXUSDT Jun 29
041be17bc4561d37abe32fae331360a9b48bf3477bb520c9b86ed0a5c14fa801
15514 TRXUSDT Jun 29
d0b78311d6fd4c764851078ef5964f06611ebc913dac1b90b95f30523ec5947d
15515 GUAUSDT Jun 29
52e1848e7a124170c8e5e17d7e59e1469a9a1fe656695caa99efb412342cbd88
15516 BILLUSDT Jun 28
f1ffda69a4c2885ad01c2e4adb03442d5dc8f9f3a62d34c4826cce9de20f4d91
15517 BATUSDT Jun 28
d3964ab08dfd7f92b9ec3311918460b670b722fd26f761abebc62bffe811a792
15518 ZECUSDT Jun 28
2042d3fbb02b12393ffac9abb2ef37460e6ecf5812e6cc9b3eb32d115dd9f693
15519 CLOUSDT Jun 28
cd70351ca4cd75b294bff1f926b77b8e1225e52f87359b491901af80335b91ee
15520 KNCUSDT Jun 28
5d3b99f6429cbf12fa6a74d00f4e84186d27af8dfe85cd5a0f3a6f0d0695998c
15521 SNXUSDT Jun 27
2fb46a4998cedf4810917a03471d9f99e0708e02da184f48c69da6627464cffb
15522 VELVETUSDT Jun 27
a501a7a1a282aa6afa147efa124542201a88d58b74f509b6e812f672fa6af5dd
15523 EGLDUSDT Jun 27
1525603ea4b177a0cc6255a3e6f83d77bf33b5bced5f061d86e69b3f188b7935
15524 ZECUSDT Jun 27
c8de62137f73496fda011680df2b18c0b2c916d688933bdf7e54f926973fe1ea
15525 AINUSDT Jun 27
70a4b806348775f0df5b1ce48631494ed2efe242094be70d0176054e99443097
15526 ETCUSDT Jun 26
f12a80a376eda79747121f70b37d2bc5ec2987dc03562ac368bb8a24c9b28d9f
15527 MAGMAUSDT Jun 26
0a07b4e2e96bb2d9654b446a2128cc4a9cc92494143457c6ec16c1d710cf74b0
15528 XLMUSDT Jun 26
740ca81cc8016a1808e826dd23cd0c18fa796939e96acd7f2d9ced84c32bd36d
15529 ZECUSDT Jun 26
0adff8cff494b894b01c8a89c24852d6b2c879c7397a32ce186bf4ce9898ca4a
15530 MUSDT Jun 26
c32170d499f67c5a8f9ff5ad9ef57554d14113c532655993de104da4e798baa0
15531 NEOUSDT Jun 26
d43f0a6e4802bad1f37e7a580cfc455158bedc60352dfcfb6623bfebe74ffb3f
15532 BEATUSDT Jun 25
e2b29d131df96244af4bda89a59826dad2fbe85f090d631bc00d052a07a1622f
15533 IOTAUSDT Jun 25
306ab792cbbed11f25ecb1d9886b058b8c9aab9a41aa16616b5900dba14271f7
15534 SYNUSDT Jun 25
9aef174ddac96a18b7d2e92c362d5d684d2fa17f050e723c84b10403d195272c
15535 LTCUSDT Jun 25
0672d7508b6053a1075ad761e5af5fac2cc03317eb3347392f29ac290c0598fb
15536 XMRUSDT Jun 25
b5b5723b75a6b82e723334c2d4809ca092868513b8e131f4f18038693cbf919f
15537 HUSDT Jun 24
3aec4e822e7997b21615ce2474cab1c6166431d4bc958376d904f0519cc0327d
15538 DASHUSDT Jun 24
59b50d871dcb1bee99be857602723bbaa8910878e8f9f0af1c05ae0a81f9cb91
15539 RESOLVUSDT Jun 24
0d4d143cc08fc0d6ce31a806389387ce1d29d3afa1ad3c3c4a4e6102a07299e0
15540 ETCUSDT Jun 24
960cd313b1065f95892b3a71688f82a0e6332375b7066777a1ae9d5479707a47
15541 LTCUSDT Jun 23
b722beeb9dbc6d0d0b398646ba4f7a17882e8d01a4471b3cbcab503f223d07d0
15542 CLOUSDT Jun 23
84a4ef854dc04855ec6a0771d481c73993285d7bff58339a4195136d74c0e041
15543 BATUSDT Jun 23
bbd7f5fb4209f950f844dfce64067726f414ed065e77f081c59360e9d2d53be9
15544 EIGENUSDT Jun 23
eff75ab53d7102cc78e2c4075e2aa871f57615e24c4e3964b23b5dd914f1c540
15545 ETCUSDT Jun 22
2bab0cd9b29e5a7e070dd4107774e7252a017a2d01c1858112c9110ad3994d17
15546 ESPORTSUSDT Jun 22
57edecac3a76c95c7c562597838ac24615e578cdf814d3af9b94285bc81c5e1b
15547 ALGOUSDT Jun 22
6b3bff02856c0dfe299ba7acd615d92a16e6b22f7ad278aebeea64d7cc69ca23
15548 XMRUSDT Jun 22
d6adb73b24f2e69e22abd0e129dc05f91a6d876bd4ec1f24917fbb0d367e6709
15549 THETAUSDT Jun 22
d81561cdf9e6508c7a916dd3a00f44492436d36cec2fc5b73ed531f204f2d9ae
15550 REUSDT Jun 22
f3712ab76a9f8a32addc72a3dbe2f25b84416ca2fa5571730e3eb174b4863704
15551 VETUSDT Jun 21
32fa3c8484875bba0a6f123502c213bb9ead1362afe15b4f13e3a9ed2ba581ea
15552 BTWUSDT Jun 21
bb7c30a14a201ea9bbf5bcff0215164a83740c65910e0c995bb8a11e754817e4
15553 RUNEUSDT Jun 21
4b910105e44f404982cb4edd16ac1661ef3d72dc30928a354e3fc6d3477a5aff
15554 ZECUSDT Jun 21
d45ee25dfaf3396defc4e233a151c48baa7c9389325464291919322940c87537
15555 ACEUSDT Jun 21
f440cb8ef4cde099ee45eb96e2dbf87da3297361b5a77685e0725308cb6bf14d
15556 KNCUSDT Jun 21
89d395aa0724cd73174bd363ee75e81b8cfc3cde433a955bf62eb0ebd3daf008
15557 ETCUSDT Jun 20
f2eae6f8f67ecc193707cd63b864bd455c217d12023e2e8c7a10df20c3b4fba8
15558 BICOUSDT Jun 20
0273845601ba04b18fe6903ff45ab655359527420dcfc3c1ad0a45da25099b42
15559 TRXUSDT Jun 20
db78383bd559247d26055ecae53daa9bc2d80fe3faa280edc11feca3aec0cbcc
15560 AXSUSDT Jun 20
78d841bc28b5a5e357a6bb7be6637683a2f02e24167143aef5d4006b27d7d81f
15561 ZRXUSDT Jun 20
992f5a554747b49de186fc43fe1677573124fcd8f9a5c4e5f99d15f472f81a05
15562 XTZUSDT Jun 19
f1c44c96662972bf926a249565385ca522157a1efc53e3adbb2a7e5fa22c4f73
15563 BSBUSDT Jun 19
cac0791fc2eb4b81f0427d97de1b0158789f1eb9191f6a6cb82ecefb37dc7bdc
15564 XMRUSDT Jun 19
f37e85f0188561816eeba19eaf91e05509481464dbbbb39924793f96714b794c
15565 TRXUSDT Jun 19
d8ec25cc3d513545a349d3deed7d3cf973f87887680ee36f374d70e74bf4106f
15566 HEIUSDT Jun 19
4d915a67a31b60c92415bc8be3d407a97da3e078d0004e154dd203e9196797bd
15567 TRBUSDT Jun 18
9e781222de29336415b934e49757c84c2f4def6870aec5f0317804f86bfebc73
15568 ALGOUSDT Jun 18
a4663caa56a9d30a9ae86a78b5aae078dc15a6602fa3f728751cceb1087766bd
15569 VELVETUSDT Jun 18
210d6b791122329f175c14cfc78f7c854bdacb5009802ac7b2eba0de4c66cb64
15570 BCHUSDT Jun 18
03a6d09ce4e1d1c7738cf45e9c074986d4c2d5f9757ed5211d2bce0349610959
15571 HUSDT Jun 18
b82caa25f56bc9c9b28cf8e4b58333340ca9cbe460852d5f289a923d71b87a13
15572 LINKUSDT Jun 17
4df48ae39e8ec38dde1d93de8fe107360152db002a3baaf3829cb1c0ad89c809
15573 MITOUSDT Jun 17
6c770f6cfd57afaefebc2491211c638f438b43756b69cf4dda242038d11c53f5
15574 ETHUSDT Jun 17
50e0dd0d2e8bedb337dc35c9cf87123e321b1cad44e54c52ff74685c8ee74d14
15575 TRXUSDT Jun 17
407f5fb97c6ca5f35ca749b2d0589b71bb68af6a2259221e52981e98e7ed567e
15576 ALGOUSDT Jun 17
161a7370cbd5380968522e977b7bbf1371989870633e31203a8652dd866aa035
15577 TRXUSDT Jun 16
1b95e17c2321cc69c5f9e5e5ad1701712ee7990aa3d664790353f449b9eec397
15578 VELVETUSDT Jun 16
6949015542e518aa968e13c3ebabb481104668d2f19f47e7c08a177d243db62a
15579 NEOUSDT Jun 16
ccc6498b8738c7eb6d7c65c978a64c44190d7686bbbba19dd2a2a15793fdc22c
15580 LINKUSDT Jun 16
b8e20ba1740af5a1d0c6ebdb1e55cb27d4ecd978c45fdb52cfbb95423382e24c
15581 CLOUSDT Jun 16
a4dca497f3c16383a8cbd888f497db7483c90289a1c0ef599b9cb3b3baeff63e
15582 CRVUSDT Jun 16
8ba5efd6d19d17711c5dc2f38eae9eafd12bfb68b2b611590331dc74fab79ff0
15583 IOSTUSDT Jun 15
623346427b6cacc4df86f6078eec05348e1ba25249f592009df5aace130eb867
15584 SYNUSDT Jun 15
75722c42e7d83e2023e77d2eb2aaa5a733e0f74206699e340179100362eec543
15585 TRXUSDT Jun 15
da5421bba72b12eafec3892afd737819b33e624990c755784555538bc390492d
15586 DASHUSDT Jun 15
aaa75d496dd3356f48bab06ae259c174998292f57ae5d0b89c180506d9312313
15587 SIRENUSDT Jun 15
9b86b7c9723cbc12d0674815cc4c4af10172514884918d4dcf206139749ae4ac
15588 ZECUSDT Jun 14
9112d89d275638d4655b0424f646255573c28a2cff0180555afdda2b8b8d101c
15589 SQDUSDT Jun 14
97a09e58d60a19c77255eb2953aca40ba403d9dafcf65943574c8e0b5bf69d4b
15590 ETCUSDT Jun 14
434a7a48b2e2655d0acd2fd411bf8a1f82301078248b6739b3ca08cb32e18977
15591 AINUSDT Jun 14
edf2ceb1b30dd84651e5ebc382efed878e9f9c377bc9fe34cc4d7ab57494c1a8
15592 DASHUSDT Jun 14
fd0cdd32371eebac334f0cb4409392ac242e6979a42b67415fd68b779e2f48b7
15593 ATOMUSDT Jun 13
b4ba75acac23d5b75403c96766627d5595ff0dd19696b62f41b397fd900b76eb
15594 HEMIUSDT Jun 13
441b6f4702c2aa602d9cf16c4a0d54baecd4edd4d82121a5eb9a30791ddf154d
15595 ATOMUSDT Jun 13
6850a255ccbd93020d49e5b458db58b359fcd74b9bd432d3c2e446a096f24bc2
15596 XTZUSDT Jun 13
4e06d882da6ffc3fd9fdb47b3ced47e67326798758b95cd7b3ab40981aa236d7
15597 BEATUSDT Jun 13
ac8fc6025a9d88f69865dcd04cc08804e75cc1ccc023a7d13a1689193faabf17
15598 ATOMUSDT Jun 13
8869375db963d9a3b8eb727da4d9b3887906bf68d0733e406c68d4b543d7e782
15599 ZECUSDT Jun 12
be4e9bcbbfb202997c245045acd776743127c5769ad10b0b8691d31dc463268f

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())