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

2400 SSVUSDT May 29
1af8f285fb248269db1d14a8a745e4eaead880ad9be502670b412581b5e4f826
2401 SUSDT May 29
33e04668ab7e62083ec45f4081433c4e7df656c97166acca407cf50050ff50ba
2402 WLDUSDT May 23
c99fa2f5f2a389aced2f111640719454d118976166767d4ccad5b18d03e8b9c1
2403 APTUSDT May 20
978f8c7861c05da32bccc3a47c857f0a6742dbe84608834dceb310efec4722eb
2404 ARKMUSDT May 20
38399cf0cac621641a648ff34f54f126de507ab37e4529cdd721a147607d31e0
2405 CHZUSDT May 16
8417f273e09c2a04777aac2076be15e29d4502f47d951440db657585c8f29bf4
2406 CTSIUSDT May 16
aaa3a256831bf5fe9f07678037997ac360cf2a0d2e692c9bc217e34386a8683f
2407 XRPUSDT May 11
aea4b71c135e58fa37e75ac0befbf8ec9f307d5fe6b01a1495750206696c7d0e
2408 SSVUSDT May 10
ef433d9779d829f1b7790f61a5bdee96c388c441576b91624ed55083e953f069
2409 MOVEUSDT May 8
835f983c96d6bb55d0f3a8a99b32994c46a60429a51bf9d7d28dbe002f8cc924
2410 YGGUSDT May 8
25963901fc1a07e182e3f19c4af21e6fdb313ed45a6bf207c931d8b5bcb395f7
2411 OPUSDT May 7
d22094359ce9cf0ade2a1db042d114e1274848cadbde81dcec9f50950d775ae2
2412 VIRTUALUSDT May 5
f27a8c29fdc8aee172624b6de7f784b69dcc48e96f6488fc9e5178570103223f
2413 ZECUSDT May 5
72b52204bc5be7db2c10624dedfad4789b73cb091f431be2c2b4879a6bd98aec
2414 SAGAUSDT May 2
f0d4e7b5b340548e557a4184d5914b986668977197ffe682a2c76e5f1fb6cc39
2415 NEIROUSDT May 2
aeec91d4b125efc3c3020f371a340e95dc273a629cb60082ed411c2085845998
2416 MEMEUSDT Apr 27
c1abfa77ac7a9957e54b4d016edb9ba2246e909c834e5c79470e0728fc17428a
2417 LINKUSDT Apr 26
8ca2b922896e52edaccac0af43169b926a5b52c64323b74c1fab0668f75671fd
2418 CHILLGUYUSDT Apr 24
11a0e2fd388210279900b233ded711dabd00c75458000f6d38865f26775b648e
2419 GRASSUSDT Apr 22
97ef6ebf0f816f2bcb9ab1db1d157efd33f6787b195f81a20449276f23568cd0
2420 SUIUSDT Apr 17
d5b8e80abf1d062c9a3f305452f062cad720b04f9f054612f4a83a202e36b027
2421 BANANAUSDT Apr 15
57ef27992e83ff8d26586d9cde67589ecbb00c784f954d2656b1ee2d62148b20
2422 IOSTUSDT Apr 12
07eaab4a0d82c08eb87fcadd1246832a454020d5eb32cf5ed00eb0493e9b3a22
2423 WIFUSDT Apr 9
476deaf33375dba74fa8949f81acd29adad88b0118196de10130703df0dbd8bb
2424 CHESSUSDT Sep 24
c9cfc3714794a161a2f766e05e98a9ada97b7a3c4698299073dbf9b774212472
2425 AIUSDT Sep 21
e6c3e96e0139087bd74ddb6c75fa862f4ac3ef8cdf7c4d1387a7969f8d9408cc
2426 C98USDT Sep 21
3262a87aba9a4304612b7329ec3ecbc576857aa6631bb324b7212f0f41166e54
2427 BTCUSDT Sep 18
fbd150e60e848155ed8eb7e4e5d201ceab737169fcceed45bb6fc98763e0729d
2428 WLDUSDT Sep 17
53c9aa4722113e7af5fd7ad030280b52034ac39d19cda105965eb0451774cc16
2429 BTCUSDT Sep 17
1d6cf5a3c773df661a23651bbb2cf50e49f6eaa971ba0182b49489e981492506
2430 DENTUSDT Sep 13
f3839b45ea77fa897e9bb9d6142b118e0a56ecf87c22e69f7804cb1f1163ec07
2431 XVSUSDT Sep 13
a237f172b74937b12b5ce22f68c4a8b7fc8a6083a6aae9bc29dca241514fbefe
2432 XRPUSDT Sep 10
2488a09ab13f981f58a34646d802ee02228446945e3fec14a3e8df9bb3f06c68
2433 JUPUSDT Sep 10
aab2c725d2578e51f6e1d3bfe07cae7d789f47069bdfb6623f62b1076314d11b
2434 LINKUSDT Sep 8
539ef169820eff5f74925e29fba11346abef60d3f89117c80432c89daaaf9e1c
2435 AIXBTUSDT Sep 8
d47f56148049e2710a85dce56b4d4ed884e06f3cf5b1d4c47df93afb5d1bee03
2436 LUMIAUSDT Sep 7
17cf324f40752285fc230c33804eea17008442c4deea593331900876fe1ee6b8
2437 MINAUSDT Sep 7
663bda1e83c35b7e90241c2aba009584083b0e32d78baeaf7fda8c4173d3b050
2438 GRASSUSDT Sep 4
28d62da1e9a6d8ff05e08b474e7b60e43b700397b51701050c7724b95b95fe98
2439 BNBUSDT Sep 4
e576d4110079d2ea65dfab5953718466d52529849b012341df6b85600ac74252
2440 SEIUSDT Sep 3
35d26d9224444fe7bb38b2c0024abfbbe6ff9928b215448361af749ad18d27ab
2441 APTUSDT Sep 3
d7c9d43f29e964ccee4ab0389291d1bc9b20d84bf3f3563c9997a614609fab5d
2442 XVGUSDT Aug 31
788f5bab30fd510fa7eb63811248a66a5705168b2846e9bd1938de1c5c8ed2ba
2443 HBARUSDT Aug 30
f64aa51314e60668611866203937aee939ffdf4588031d8f203a176d7fb4a55d
2444 ALGOUSDT Aug 30
998faedacec276a2a8891b70260d58a77deeb3b76e93aaf516a3d1a2ea2197fa
2445 ETCUSDT Aug 29
fe21dcfb29eb44c64686a6877e8e67c618ce02ac6a2f7d4aae4bba66dff3280a
2446 ACXUSDT Aug 29
849ef25ece6f450f2a493aec3213cfdbd20018417983b426dfb42c5467abfd7c
2447 PEOPLEUSDT Aug 23
37cc8e8983700a7b3f01ea72554f68a1f2062ca8ede09bf15e19b64ea598a0e8
2448 1000LUNCUSDT Aug 22
31712bb338b44d4649226be7e61e4b3f8b79f26ef07ba17805997f2c76dd2730
2449 USTCUSDT Aug 22
6da537d5b790aae548bbc7c517888271e215e5830f037080f337746055c7e90f
2450 ZECUSDT Aug 21
86631b4123b374bdea77f4189d4545adec6751d6e68504e3738c80e9487d070f
2451 MORPHOUSDT Aug 21
eb9ad08a9e6ed1495eff6df89d0693eecd20a75e13d184f7e23c3e288fe1096a
2452 LPTUSDT Aug 20
5c1a077637e4026af028baabdfa6e5c63e1ac84725e96f2c95d70d7c17e55a21
2453 AXLUSDT Aug 18
0db55e01d097e5e0d644e30771c0af69f8e25b11315181989c90734b155b8e90
2454 KNCUSDT Aug 14
2ee595365ee9edc559d39ae4404001a05f084e48f9b875cf41c9b133ab542dcc
2455 ICPUSDT Aug 13
513a1de8ffabd16d9b60a09da4594805ea459fa1a737725e477f4f3092cf0e96
2456 XRPUSDT Aug 12
8422a4169573024596380398ad20bd8f394d2f9d3e98dbb709b3110e67d43b48
2457 ETCUSDT Aug 12
2ef27099d9ae79d436d9d93698f9da3c625b56dd861eeeaadadc49d209d3b2c0
2458 ARBUSDT Aug 12
ae97274ff999792aef6c4e4a1df14a16d13f3c799f252fd804ab431d5621482e
2459 RVNUSDT Aug 11
d73664d09153945224fdb0d885e7f4b50cbed1258e7718b54692568cb89d01c2
2460 TRXUSDT Aug 11
0770903f0da8830e8abdfc33721d7a8511242109621e2dc744ee94fc27cc60ba
2461 DFUSDT Aug 8
5e077e86e2097b9c58b07d17ef09244a1220525beed2b0f2b9a05ba74d106059
2462 IMXUSDT Aug 8
01f510a27830430fc89a5615e36dbb27a5ee2be4af00854648180b9f3261f06b
2463 BRETTUSDT Aug 7
ff8eb9c956a4aa43afe3d9caae8d1feac8ec5dfcf5c2a4c59e3d2384c1ad05c4
2464 ENAUSDT Aug 7
622ac968bd15babe6109367d717988ac44abbea68b6aae2ea1a9f206ba9169d5
2465 XLMUSDT Aug 7
71bb7e4a6952329545b5c03bce044d7040e81b6a9dda2d22594d81b254da423f
2466 COMPUSDT Aug 7
870e384e367ba90aa30c939f7ce268f3238d209719e4408f83c3adf82e18d1c2
2467 VETUSDT Aug 6
018f6ff7e478a6c8a10db9f20f3eda59c7a3466e84121d668b9b5d09234b5ef9
2468 PUMPUSDT Oct 2
9bed09fa6be7976df1318cef4ada026532f05898e8982a2b28e0104c7c0f6888
2469 AVAXUSDT Sep 29
3ac25239d112994739d538b35257e94d678bf6da7e94c6e13e6082f79b6bf125
2470 NEARUSDT Sep 28
388d8cc47ace176d16b4bedc00712cb641e53025c6ed69c2562bf357c153d2c0
2471 LINKUSDT Sep 26
ee7406ac73c683b5586838e5f19914bf6d35e4dea7b369b0c9f342530ec1f11e
2472 ETHUSDT Sep 25
77153ef6681545e7eca126ea2b6a7e716865f9e7a5c876572b46447759010a13
2473 HYPEUSDT Sep 25
3cd075e0784c3ae004ac39ac08da6c6928a948fdd1015cba98c5c553e3e00ce6
2474 NEARUSDT Sep 24
9332bf0609d54602abf4ef19e2c8faa64e7288dfce07cfa928081df7240894c5
2475 UNIUSDT Sep 24
453074d655e2aaff25c612d36b14f3ab5b412d61a7f5ee7a5782fb491cc4295c
2476 LTCUSDT Sep 23
6b6879ed723ff2da8fe9edf1313558abc23e39a958c065f7d5e92dd53c05faf0
2477 HYPEUSDT Sep 23
9035710c6a8167713a8717de7cccdd2c28de0b04097823c026e3ffbc03c16e0f
2478 MUBARAKUSDT Sep 22
9dbf872b705ec834c8df51dafd15689afee025999eace32452da0f8148e7562d
2479 SUIUSDT Sep 21
0899217c7a4e5f0b756e3c62a929b53ce0f11ef9e5dbf30d2aa8f392fc456a4d
2480 PUMPUSDT Sep 16
532ea4915c75d7ed072a795b6ae60c43b61c995cc876957345fdd675f6d2a477
2481 UNIUSDT Sep 15
6baf35feaabb0a74915df853040f6c4ba910fb9e31bf6d9e535ff9ab1876b0a0
2482 PUMPUSDT Sep 8
b0a8c00cd8b426085baccd473f983ef6210300ce5a409f8a9c2c0b3dcea95039
2483 BTCUSDT Aug 30
4755e6d7383a6243350bc08f3874d5fbfc048923e4e0787b453ffae8141cb92d
2484 ZECUSDT Aug 30
c74f62df8543eb1f4cebcff67a9f98ed6482ddd5ae175c37e6b23262fe2609bd
2485 ETHUSDT Aug 29
a33164e953766c13d153108a4f4ef889fd2379a290aba32f2e8fa387dfa26d03
2486 SOLUSDT Aug 27
a846b10edd6907ad4fadc5b33b64c3726fdaa27f5c6da1ba6ffe6fa334a8ce98
2487 STORJUSDT Aug 24
e5d442d530e38e74a2a91e2edef5e6672417bd0836aeaed15f7df14e9dac916b
2488 ETHUSDT Aug 24
22fbb048b6d9a57b29e84f3b6e1eaa8d1532c83c918544c9231dda268b764dbd
2489 HYPEUSDT Aug 24
58c4c5af55f3bca9d41b4de739fc199e5eb754c9a108ed3f3195e7e4e745ad9a
2490 BTCUSDT Aug 21
5411810dfc94251348ed8a0af98af6669c7be037968f5b84c6c6f8d724e8bb0e
2491 ETHUSDT Aug 21
8cc1e2a30d8366af57b91dd3b8bb99cac623fc5acc7061b72382f31475100fcd
2492 HYPEUSDT Aug 21
56e6056b66c37ad9264e501815c3936a95030427d7e144ed7b55d09df13262bd
2493 WIFUSDT Aug 21
576d3efbc70a4fec2bddc4349be2162f309bbdfb5b806cb40e4aea4faf65027b
2494 NEARUSDT Aug 17
8ddcff865d5b41c8a19516088d1c860b731840596e36f69acf50118765609f14
2495 HYPEUSDT Aug 17
c4ca66f9d03eb552a0d43eb0f41c5f931625f6090434b71afae402439145062c
2496 HYPEUSDT Aug 7
0fcaa97b5231d62fecc71e7c852f93e684e5078bce058c32492caa3ba2bd0ec1
2497 ZECUSDT Aug 3
8ee6212528993f8ca488f2f44341b939d765fb7cdf3876145ee30dffd551097a
2498 SOLUSDT Aug 3
483e47ea20ae77680844c2e536198f37901c5d2db7c2ac8ee94a25cfd1546cc8
2499 HYPEUSDT Aug 2
5dbd80f5686de0e849addc9fbda7886a3d7977edd07624a9024746df44c377c6

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