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 11, 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 46 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.

4500 BTCUSDT Oct 1
07151c454ac2b88239ecff41ce48febcf40a1d09f8d60b85c7af5c7c15fdc378
4501 PUMPUSDT Oct 1
364ee6a0fcfbd141f1684221b1a2e13906489618ee1931f5e0e945c52d620f2f
4502 NEARUSDT Sep 30
b76d97e0ad8bafd5dee58cd3739433c6420f26f8db6a863ed255034864195067
4503 LITUSDT Sep 30
df376862674e8fe1632889e8b816014762306ee4a0b7eff3869a425853b77aba
4504 ENAUSDT Sep 30
c1ae110e0b4a6923e42288f7f36af2fca40b04e0f79d617834d79e134fc31e38
4505 NEARUSDT Sep 30
0cd3212e350c965a20514aa8e1c61b001cd148863e6f45a3de88dce7c9f6795f
4506 LTCUSDT Sep 30
c0278fd2b8eb1081c089eddd6f82db50e9eba4b225f48af5fcd83ce9e59ead2d
4507 QNTUSDT Sep 30
28e0dc18734c720e3f7838f0cb4be54595ff3f7efd1d4e7f9a57fccee945fcb4
4508 DOGEUSDT Sep 30
28385adf50176a8092eb80f22fceeba72c326fc54dc56f3e241f9f1cac036f44
4509 BNBUSDT Sep 30
afe2fa147c6ec393502c9d474c31c7f11a18b651dd67601d76aafca565a9933d
4510 XRPUSDT Sep 30
22794eaa0117b45bd0b61699efa0bf8ebd2eb78c35a587bbf0c25e3598f91827
4511 ENAUSDT Sep 30
468aa9d66b093963cdb19902e855b3564f58f89704fe1b9c1517d97ea8645558
4512 SOLUSDT Sep 30
4227d689cecd57b18af68fa22d9d52ef5e6718c2f34921579e083c5f6f0ed4b9
4513 ETHUSDT Sep 30
8e61efa3ab3d6acc3dcdc490390c1949c0070a70d97ef07487b4e86a301f7d63
4514 BTCUSDT Sep 30
b72a58fe95f69aae93c32a6006c215f61c19112e44cc2bf4654a2d92f837be89
4515 ADAUSDT Sep 30
e0e0f55acab6838483aa0d7444b66ff3db3e522ed7f1d315d541e5f325f736d2
4516 QNTUSDT Sep 30
9f426f804c9d6296cb6383d709483ca987cf3753cc212f328bbc9af2518b3423
4517 LTCUSDT Sep 30
9710251315467daff3680beea382badae8d253f2529e2537ff9cb38e1e2ef0ff
4518 BNBUSDT Sep 30
829c824b26acbaf7dc59d6418e4905b526de3c69858d918b990d0b7675d06b52
4519 PUMPUSDT Sep 30
93cfc1a4e00ba7e7747e773fffffd7fb153e30ae1a630d7e869a9c46b0aba5d3
4520 BTCUSDT Sep 30
c17417ab5a0022708ed4f0023922fa021b9b1c8591f2ab4d1cf8c6257395390d
4521 PUMPUSDT Sep 29
39a048f77de57e9d33515a9cdf5ca688fac8a5f17cba75d97e4705796901a40d
4522 ETHFIUSDT Sep 29
092ddc7057b01773b41c144fefee5339cc626af06bb30ca12ad1c228e6ecf68a
4523 ADAUSDT Sep 29
a085f58d6ac415b14b6af7723d1dc1065bf55187fabf14e0c4dfa00921338e26
4524 LTCUSDT Sep 29
957b2fa4297e97c2b86956782f198edbc2416d8bd2e1c64d56761223a1e80685
4525 DOGEUSDT Sep 29
062bd5d09a993584edd76767024c37fee91d175a8e9772986d6b4b1457964475
4526 BNBUSDT Sep 29
9b6c88b2dc9df7110cc1d06e205a0595ca40b196044d90854ef9b5114791c72e
4527 ENAUSDT Sep 29
663e0816ae7b637f02b87891937a1dfc68c9d677c94d599f651251e35697e1f7
4528 XRPUSDT Sep 29
7d7b00bc0a0a6dea30091d40bbd7fb0feedb6365fee377270f8105309ead977f
4529 SOLUSDT Sep 29
c34ed98f666d208a389266c47ed1cd810225d69efd64e2afb6d7b7a55e9304f6
4530 ETHUSDT Sep 29
cdbb14b7289042450e88ba156e2c62cdcebf3c7d2b8b35cc28c417bcf5bc3945
4531 BTCUSDT Sep 29
964ec931280d2258ffb3c1643f190c7515d090ebc7ae2156a4d88341edfbf35f
4532 QNTUSDT Sep 28
b994c9195f83184416e0b688869e5d3e425a48d532824099585443f13ad3ce0c
4533 HBARUSDT Sep 28
fd17e79a4d266792a188b10d71ccced15670e41fcaa9813b8b2fc23fca1115e9
4534 DGAIUSDT Sep 28
c7b9b9f3f5373d759bc79a12c92e9c0b14eb393ad4c9e8e1e88c28a1115a0f2f
4535 XRPUSDT Sep 28
fa75fea5698f8b48912bcfc84ac297002f25b5991ab6481d11179ab97a74e58e
4536 PUMPUSDT Sep 28
6c3de31fa47ecb5bb582e8530018b2c71d1098923e6b13f01fb4094123f503b4
4537 ETHUSDT Sep 28
9081c78e1fa914a7924521f9eb433d6e05dfd46c12b495389e240b05327700f3
4538 QNTUSDT Sep 28
97ee6e7cb770208001d10e83481e80c8a96442f95a809355f74799e5a051969c
4539 NEARUSDT Sep 28
a622d1e2efb7bf19f0f032393d95cc4940a78cd1d8807779e72ab64dee7461ef
4540 PUMPUSDT Sep 28
e9215ed1f88b81eade070fe9b6f2f31f48c4bf5f426fb6d753a6df2cf250cda2
4541 ENAUSDT Sep 28
57c5782c054ffd4e209e05a2fde12bf0ec91ee2563c17e749cf87626beac4c13
4542 PUMPUSDT Sep 27
8fa153015e22b81e9053cc74fb2a3182baf2aa19c203faf7a8152b6f073b07bc
4543 ENAUSDT Sep 27
ae02de063a5fdd72e72412d09ab684a3149d3dd6d25fa63e22488e7e65762739
4544 ADAUSDT Sep 27
db953f701b4368c6bcc89cbd8c978155537949e21bd3d07531ae48a7583ce774
4545 BNBUSDT Sep 27
8baabc41e8d526824c631f0d2e89cb2b29c5d4d0e91499b9ddeb4645974d02ba
4546 DOGEUSDT Sep 27
66a963046f1e5abcf136cd7e7233aaad82defbe3db554fa2e1b0120b0444be63
4547 ENAUSDT Sep 27
74add197317a3f318b6213bf9ff1df53421c18a26579864dfaf698a607ec9f97
4548 XRPUSDT Sep 27
54b300498fee401586577d8c379c1d02c081d77166db08bae948fb1dcf5663c3
4549 SOLUSDT Sep 27
ce9a053bb419158626043036801709930cf0bfc9abb3be38863fe3b3393f457c
4550 BTCUSDT Sep 27
b8ebedfe086085ce4bde80ed144edbb99aecb2b2b61f86eb3f53b18009fa410c
4551 FILUSDT Sep 27
09778f5f60a457e241cf26fbefe976e586439d58273f0b72bd570b55c48c2e41
4552 NEARUSDT Sep 27
3fc453dd2f0275c94c83fae993654a76e0702ae2d7f507f9ca2045be589ba6db
4553 NEARUSDT Sep 27
a8fb7595be8aeccf1e84e284c1db99e25dcc224ed1bff23c69bf2003b136351b
4554 BNBUSDT Sep 27
023cbca6971d46eaf3e974a297b1cc0efdd8387988dba0514056b32edccc7126
4555 DGAIUSDT Sep 27
f8b5ed9c3bbc5a443e0ecfe74cc38789db787ab1f937aba16f9ac9b3abcccbaa
4556 ETHUSDT Sep 27
217ba10cd9142d480ded5cf3b304937018a81e01b063824074f0adb413d366e6
4557 BTCUSDT Sep 27
0cd6519ea69134ec9c077d2c256c26e1518f096f4a7c37320873485531cad1c3
4558 SOLUSDT Sep 27
e0297569635859e57cd5b78793e2a3de368444cb5f1b4d2fdad05da9249b1ddf
4559 BTCUSDT Sep 26
2e76fa4921bf7ac7b922026641afbbbd584da7a98303806add1e84f830d4854b
4560 ADAUSDT Sep 26
8296f172caf79796f5297e3aee79d1fb31f942ccfc49d5c436848749538bc335
4561 FILUSDT Sep 26
24dc01673788cd57faffea1a0c3b02d117d1540cf13fdc7ea698aabb7ac59544
4562 DOGEUSDT Sep 26
387e59452dc39cb76a73080f4e573caa74a23cc79bdaf9c395f5c18dc2315923
4563 SOLUSDT Sep 26
3c114bf7e1b1e6ca707aed2417e770b926484bcf03ecda84f4f0f8e52fe09c96
4564 ETHUSDT Sep 26
ad7cf0bdfc17cb0ec85c2ef0c788ca96f2a93cd7a39cd6da1c9beb067944c27a
4565 SUIUSDT Sep 26
45aa22bc48761d7a5e761dd661664d6b7a0303bc8a85eb16c79a6c331e1412ef
4566 NEARUSDT Sep 26
e42ea23f8731cc837a895aaf509278a5d0b90841d85059bd081c2b6f7a8f95ac
4567 AEROUSDT Sep 26
c888859485f21e25cd3e51f184f4989dd7a88163dbc052b66ada6da603a92435
4568 LTCUSDT Sep 26
27909d1c622988baa0c3a10414435669c2cfd83b97f28d3148fd46c7fbaece3f
4569 ENAUSDT Sep 26
37fbff12e613dc3eed90d2d4f6abd7cbdfe775697d2baa99cbea1997430047fc
4570 BTCUSDT Sep 26
dd6c37eea3330b6d4a3b037ac1f0b7141070d42f801927552e7142073dd4bdfb
4571 LITUSDT Sep 26
6f3f7681715123fe0bc96a646703453cdd14edf8cce237d06a2ce8e37b661866
4572 PUMPUSDT Sep 26
6b97823432d6e53783e7ca3b7ccbd422190e745ab104f049f6c0007b6e75706b
4573 DGAIUSDT Sep 26
dc51c86d207dfbe6064772e8e3dea7a64a97b94c27116912b368881cbd1ae9d1
4574 ADAUSDT Sep 26
042367f8d51d01e5cb47b3b5c99e9a4f43cddf4a7bdb3cdbb0331cdbc40a5d32
4575 BNBUSDT Sep 26
ea0b25b494295684ddb3283259d12e50df35dff967777f2fc4564deca5172e55
4576 LTCUSDT Sep 26
ad45aa1d4a3bc627f98a2886a76de6872c444ab2be4c9e5ede14e931117e254c
4577 DOGEUSDT Sep 26
0d594dd9993b6af845154fe01ac430f58aa15a11df62ad3b7c29226cde83793b
4578 XRPUSDT Sep 26
333f84e6aad8d7ed1a0521797bfbcb6a5d5a8b5f099d0064f5d0c5ec78339e9d
4579 BTCUSDT Sep 26
9ece872c1c9e45fa8e375a393fd90e05203b0286af31a44087d42528325af562
4580 ENAUSDT Sep 26
7f7f584e40c27d9705ee517de88ea1e602b5a93464b2a0f7eb028d6f98d47941
4581 SOLUSDT Sep 26
85045d41847b640e2b1914dc0feb4b37ec03a49a378de907fa8295504bc2889f
4582 LTCUSDT Sep 25
ad5824ce51c6cb4e2211e5e144b71eb7b5e2beae614054a03bf78fe0737a3b63
4583 ENAUSDT Sep 25
726a5ea15a972fe92cffc21f11430207607323f69f9a02980fa30471c4ce21cd
4584 SOLUSDT Sep 25
127d91963165523410d35cb85d56fedb7a04e056912a775a81501354063fa5a5
4585 ADAUSDT Sep 25
8dc7e77a104c121865fed841ded65639d3b94ce66133badc668cbc369733ee98
4586 NEARUSDT Sep 25
63510da87341706dbd3d0c6beca4588e848da735869fa157950542ba708f6bfb
4587 DGAIUSDT Sep 25
1727d04a429c78af85e69de9b81fb2a51b80d3052ed43002e5093c44184a5e18
4588 DOGEUSDT Sep 25
1b3c48e1b6d095097efba7799723ae60950aaa05a911cb7cd97d249611c7075d
4589 PUMPUSDT Sep 25
22b6414b6fa1640ed07f7f10f30689320309a7b70634b1d91efdbd9fb8d605db
4590 ENAUSDT Sep 25
c705380efc517a3d30f2ea49285333a3e4036a2f86ebaa2577c138b204d9e112
4591 SOLUSDT Sep 25
4a86caeab0578bae19e74ffe74ad79c81b56f3d0f792108595914d54c5a37d33
4592 MXUSDT Sep 25
0154df97ab28df3e93b0358a775ece2f195d20676556bf739909d334081a738d
4593 ADAUSDT Sep 25
e5eaa091da06d7ae3930521d4bfea74f9fbcac571f65e342e6d1e9148d64f740
4594 NEARUSDT Sep 25
fae0baf62cf098819d0980e6905bb4ac9ff5643bc408a84fe2394f02ec27573a
4595 DOGEUSDT Sep 25
9ec0f21b16ec7966c7ecea3ed037abde066d1c20532cf17f5ceefa996846e44d
4596 BNBUSDT Sep 25
b58afc3023f847a7051576c9c384b18db58650cfe2a5fb7992801f2a23e301b6
4597 PUMPUSDT Sep 25
c4f3ad3d88fcf669cdf1af69975d28b6d0a28eaf7a37bf20f534da17a54cfe7c
4598 XRPUSDT Sep 25
78b95e4fa742ddff296332aef2c71a7deae963fe1dd2c4cd526ee396546d80cf
4599 ETHUSDT Sep 25
1a746ac230826f4e0a20cb773113131c7e16762d97e6ffb9dbd818024b004898

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