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 77 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.

7600 ADAUSDT Jul 8
015c4b9702727fb8ffc64fd87dfb55a89d0afc6f7fe898fb03d493cafc747fc9
7601 XRPUSDT Jul 8
d188b01929bc678fa295e6c994cb11e61018ad2b20bad3144443ee4421ca030e
7602 ADAUSDT Jul 8
504b874df88300bd2d4c09230a7287701edeac8df89aad81fe48915926048031
7603 ADAUSDT Jul 8
22bad367443d638305e98f2e89b9e7a0a78d7f4f22d4dcef2492fb9fab781690
7604 WLDUSDT Jul 8
f202a2b10fcde9ff4ebc6051b53a3a5e11f243c1443a710e160d162725516eee
7605 INTCUSDT Jul 8
480f8f39127161b1352ba90e416df48eeeb66ebed122e10a1abbcaaf5ca4e38d
7606 XRPUSDT Jul 8
1ac9a80f34ee5af3c98c0f80d213bd8a1705e5e04f06b6706adb7fb5de9bcd39
7607 CRCLUSDT Jul 8
06f2008f2705099a8544063dd1abb0755b5eb5e502caaa07e9516278841908ba
7608 XRPUSDT Jul 7
ed0550b48a1e6d302e476efccd6f697448c806b80a0b1b442e906130e22f973b
7609 SOLUSDT Jul 7
867e392e66aaf4036a34de00b29a589086293ede6062e804baf6c80d7f38d342
7610 MSTRUSDT Jul 7
b8a7cb203596413cd164d71a7b98cfab2a637fdbd265f5b04a046199d440c475
7611 PEPEUSDT Jul 7
6dab7969e8545762207b2b193bbe10fe971bcabfc8d967bbb44a4b3bcddff6e2
7612 CRCLUSDT Jul 7
df1b4b2696105b21675605f48447957891e51b4250d668dec59a05bfb679947a
7613 ETHUSDT Jul 7
e873fc1b30980fe13f1e1c8a845fa611eb8cac2909192a653c71bece577b252a
7614 SUIUSDT Jul 7
e313225c5cc3f08c2e9be8e627e458be011620ab15e591d76605ae141e86a8e4
7615 CRCLUSDT Jul 7
7e12feaed235f53202f29e44c73edeb649da089cbcf5ed33e9586d6342fb9c4e
7616 WLDUSDT Jul 7
ec9b40ce59cf6257d81a11cf00bdb1d135b09e66bd8eaee2e9ad4ad7c99a21a6
7617 HYPEUSDT Jul 7
6422cb7849c3d7923ab9dd8827c9e16259a11f83ba068ac6789b12ecdc0641eb
7618 NEARUSDT Jul 6
8d30e4e122c6792a78f8b1934f569b7f4ab20663d35993078ee0d0257171b458
7619 SUIUSDT Jul 6
30d091d3515edd67cef9caa711de17de1812f01eb59230539b19bbbf61b7e2b5
7620 BNBUSDT Jul 6
af46f1a75c93527e52125ffebaa5d1b6c9c8d915b611d0e7861d55ce3830484a
7621 ZECUSDT Jul 6
4f8adbc7bb00358244d54eb5b35a31b1ca3fa8eaf3f83babd7ad18653c40e27a
7622 SOLUSDT Jul 6
32ff7c16604571df842ea4edc8b6a488c462a5aa51a51ab7f383e6e33b7f7925
7623 ZECUSDT Jul 6
a68c08b7a88b5921a8cf5d998893d8f5c89c5708f8488712be1879c6a08719ef
7624 VELVETUSDT Jul 6
e25fb59b462f21861bc2b1918b74ce4e20c1d0bda9c93437940964197d90beb7
7625 VELVETUSDT Jul 6
9c835d166d1f429c2d8a50344e99602e61d2ffe6623065ef0b933bd69399468c
7626 RPLUSDT Jul 6
70cb05391786f202477d855e33dc567e28e112f3d0635def4d720d31750f99e2
7627 SUIUSDT Jul 6
20365e1946ba75de596db929a224fffb8d2f6ba978ccda5aff50822a83c20b1c
7628 TAOUSDT Jul 5
ab58a7fdec67262934735dc0283216a9deba9323e4173305017ebfc4d169013b
7629 ETHUSDT Jul 5
aa649da39f79b0ef899791e30c9feaa618c81560eeb3b411ca32c4731d0073d9
7630 ARPAUSDT Jul 5
8fd405b02108494882621d1d719021da29aeb504aa4833b6707890bff333a6f6
7631 1000BONKUSDT Jul 5
e38bae1b0e877fa840311590126206a9863d47df3c3063d2d5c45e0475c82f1e
7632 MSTRUSDT Jul 5
b33b6603d82d9cdf4c386bb42fc8849b75e71fe596901ebf15c7a5e4ca93b26a
7633 ZECUSDT Jul 5
2b89207ad661b5e4f92a60aabea3c3405d1aed4ef4638c12485a380c1b437466
7634 ZECUSDT Jul 5
77af15d056f49b9e4feb95650e4556ac7caded03153c3a72efc5815ad8713b26
7635 SOLUSDT Jul 5
8261dd467ba78e6ca2357e7108e2d07c1288bad4f5c2ec1c1d95c90d38053c58
7636 TLMUSDT Jul 5
47efa25c8098c15b454d244388b3f1613afa9565a9f4bffe6ee6c33079d90ea3
7637 XRPUSDT Jul 5
c2a6d09d79f1929f929f72eb0a0366100d05291af3e1450ff7d85f4661b8f4ee
7638 SOLUSDT Jul 4
ae7cf517b872d89a5e0b8ac8899c94107c2e0711fad691079e9b48a005cdf3ff
7639 MSTRUSDT Jul 4
18afd1ddc60d8390f9232c9fbbaafa9e0523bc6b8fe55793c4ed233ab1014fa1
7640 THEUSDT Jul 4
6ffffc67c9e87deca2f139b8adbc21dc1809e8335c5ad1fa4036c3990efe5888
7641 MSTRUSDT Jul 4
f4008658079bb6d90c9123fa1bacba9dee5b3a82e7c10dd1cdb98b153f2a387b
7642 SUIUSDT Jul 4
bc9cc18d4271be73f2779ed38bf46a89074a3453e9e2e335dd6eb2c099927d9d
7643 NEARUSDT Jul 4
93d2bbb9efa20a90cf8d368af795044d71bfdf3a64b9abc6fa32404cec702010
7644 SUIUSDT Jul 4
45bb8ca668baedbf5a489ea475d371fbbc458ce998104e2a24e7f185f68e6416
7645 BCHUSDT Jul 4
b18ddbd64b06c269d27abf1271ffd8614c12de5e633234c857e8db187a450ead
7646 TLMUSDT Jul 4
bf267a34c3009a3f51ec5098193c6b9ca19da5869f796e02fb4b6f695bf6149a
7647 ARPAUSDT Jul 4
43f070326256dad3d88bb832672bb662b65f47ac157b048097ffbd598e7de22e
7648 TAIKOUSDT Jul 3
057225e1a41317d4cd218b3ad05b8875d45fa76b0fe707388daadab8b2329ed9
7649 TAIKOUSDT Jul 3
87b9bdfc0c785c7790fb1e2e4ee4fb71a54cd47ba9855dfe7b7e51d9846b2028
7650 TAIKOUSDT Jul 3
62928ac958de5a7fdbce8a9e7871055619cce94979d8a3efa44748f3024f16e3
7651 TAIKOUSDT Jul 3
da7c8dad1421169996939e3a008e1a8631ccc40565f1f7eb06df2a17c238d550
7652 LABUSDT Jul 3
69faf8593c5cf75b2a9d7baec8c7158c09559156e6cd66a537805d7e037e46a1
7653 ZECUSDT Jul 3
244d102ac7cb513d77b532c1bc19cbf91b844ffedc092947762b5eef6a6b1e82
7654 VELVETUSDT Jul 3
2b7201d7a2ee332377a0f9a380b5697a923ccbffd6815af7df74a4fc7abb7b03
7655 ZECUSDT Jul 3
7c4ad52cf5efb00edf07b050caf24d8b44c952436297361f6cc066b7967fcd66
7656 ZECUSDT Jul 3
830ea1a1fc7cb991f0178f8e37fdbf309c50ba8ee66b1c6b7b0fb62171911a06
7657 LABUSDT Jul 3
7aeaa5cd18ff1ed2c248a627566d1a1a883957d2522867702aa4fa61c06b5546
7658 XLMUSDT Jul 2
4060b5b9a0c61d02dbc078a0c5c718658fd4cc7817bbdc6b8cf306b4690ab255
7659 MRVLUSDT Jul 2
c6561342a6d7ce019d1ce34c2fdac5a3de4b9210206ad8bdc887523b0d0a7815
7660 HYPEUSDT Jul 2
1eb44c511e025e6cee342ad28938bf4c42f1db7bea2d24ff1e2c47ee9664c8ad
7661 CRCLUSDT Jul 2
0371419b309260b4a8f2e6780d64ba699410ceddcadb36cdca5eb502c1d836ba
7662 XLMUSDT Jul 2
325428c959403c22746aeca47061e2ace32eb40275189f538fbe90fbc54ea56c
7663 WLDUSDT Jul 2
69fe96e59f56af649665b4c4df91d643c3d8b85ac734d42a5889ef15db712df5
7664 BTCUSDT Jul 2
41252094ab78fcea0447806381ff7c56a30513cebb158dccf775daee209008bd
7665 MSTRUSDT Jul 2
dae51b657e4e850768af9015436be1666800e75be9823c921e81ac7276e4da41
7666 HYPEUSDT Jul 2
ad93d8b72a9c592b55076cea8e9842956ab93594bb0e95df5598105fbd927d1a
7667 XLMUSDT Jul 2
87125ab4dbf9f3674d237ea62e728f5ce3c38f4e7869c407b71dc912a8a8ba40
7668 SYRUPUSDT Oct 4
679da6a42d259c0a3b166fa2f8c60ab2d2c050e7e5b07c6f80c5144e9b13b423
7669 ZROUSDT Sep 30
dd34cd7521388895f8931c2a7da108955fa8730846418aac347d2d53c485d34f
7670 ARKUSDT Sep 30
99715ccf1c9d496de240ea944650b18b38d12faaae062bcc2e031b59c5f3d133
7671 WLDUSDT Sep 30
73a1a9a036070c43a04fdc36f0d9cf2a0c38955d879ccadcfd950f00cc05c20d
7672 REZUSDT Sep 30
ba9fdca3df01eee09a40e632bf1dba195749228af95cfba1721ff422aa7d8c49
7673 FETUSDT Sep 18
ce2e2d67a8891e4c1e82e50802f3979c173d62f62692101d1776225bcda63684
7674 BABYUSDT Sep 14
f38a438a201484673a1f48540278f80f88827978a790db132da2cb86c9e9c847
7675 POLYXUSDT Sep 13
687450bdcaa377ad43c21344be351ee4897015789c9578165fcce29f73f1f43f
7676 PROVEUSDT Sep 8
bf0c083e9ee0a0fa4f6e50da0d54f074748055eaae093da9bdc9ee92e2b8b862
7677 SPOHUSDT Sep 7
81e1e26c3ec08a4fd4116efb4469ae1070fb2a0225bfc4b415e6cbf837578d3e
7678 MANTRAUSDT Sep 5
644a45a6e0a1aa8a1b510af06c40dda0af7fed8f5bbd6ef915bac1842f817da6
7679 SAFEUSDT Sep 2
06e18f636b2b4d303a1672e18c99a357753c282aa6f1747339a4d7a1130402b5
7680 SYRUPUSDT Sep 2
f4d44974551537ff77f47b0b85a72438a8e97813e04f0da8e1feb5e7194b403b
7681 INJUSDT Aug 24
96be4da15623887ac434ff8fc9722c914f4094224267acca5b93614e3d0f26fa
7682 EGLDUSDT Aug 24
1a2b3b7374fa91cae859b46f0ff5aa657eb72c1e183d0c6ff80ba6d57267c0bd
7683 SUIUSDT Aug 21
23d4052cbecbfe2e19f4b5089f2d7834f17a07a84e8433df1b6cb10e46c0f4b3
7684 INITUSDT Aug 16
61748928c74b41f8f4cb29768691b68b63c3e7f7725fc0247ee3f5057803406f
7685 SHELLUSDT Aug 16
a9ea2c40508f2725a02544d1b3c1a0ee6215b4c198bb1d5d978fee22435430a2
7686 PIXELUSDT Aug 16
6b0b693f8370aa933230db37e1003190fda7ff75fd5cc062e4d1f77b2953df6c
7687 XAIUSDT Aug 16
1a55c99ca5c8d1cc45573ab3d8057883e247249a265f3b5dafbd2d8f9b5a4294
7688 GRAMUSDT Aug 11
ba8e585d2c65a37198d6e4434247b0271d70133320bdb22637ed04f0a5d6e9b2
7689 TSTUSDT Aug 10
d27980869f77d87882b52d4cf8ef49866f838350c54814daafce58079f562791
7690 ZKPUSDT Aug 8
ea867b2d5ec684e1bf129cf4ef29a9211c4746f511510a504c1971cf1e2415b2
7691 KGENUSDT Aug 7
e1202ed294c0b02c6c756e60879574e5c9d34d7b92372650bae8eab51ef7d844
7692 XAIUSDT Aug 7
38df4ccf1e3a866feb4e3d809902a597c0a9a2df3852005c5f91c0c4e92d70cf
7693 COOKIEUSDT Aug 6
7da28c141656669d79e2aba411ebcba8a9c43db80c31089193af4ff3bed567b7
7694 ACTUSDT Aug 6
1ff957b33c9ec5e0679113822248e344cbdb7f1ea802ba113f346b2279e515ff
7695 TOWNSUSDT Aug 3
4faf272d9f7a3e8b1b5a93f2d17b32a6523c727b8c3603b66f553fda4aed1e72
7696 SQDUSDT Aug 3
d916af916b977563fd25b7c89d2c1556c3d645738686d8ef8112063ca384035f
7697 MANTRAUSDT Aug 2
1fd28e9bc25419f493908f6b9a27eae2045ecaba0dfb256220a9d30bb1e4028d
7698 CASHCATUSDT Aug 2
a5d35a85e64a06e0e48c49f49d7efb9620733ff7704bfbea49b30c023dd5f59d
7699 FIGHTUSDT Aug 1
ea4f094b2a3595323d93082269d2db92794effeecd709f5e82ac6bb7ec6f4c88

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