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

15200 QTUMUSDT Aug 26
5868a9eb9844944f1a9a9cc7388c63ee16696af676e0250db2fbc3fae29b7e90
15201 ONGUSDT Aug 26
a566ba4a812da6d9e3f6417ced5a5739e1f564c1a464b46a59119eeae5945840
15202 TRXUSDT Aug 26
943902a23d3a3c3f4098e3ebd1f84d93af24d1162fa40d9187d270242c5611b3
15203 ZRXUSDT Aug 26
bb7781d89a8312b569d7541c4ecb3ade05ddba1961d3810129948f5a8dd30d42
15204 STORJUSDT Aug 25
3da74062abc7738a8fda731b430a80d5483c17e6b9dd815e0f9cd78d7bc88e9c
15205 ZILUSDT Aug 25
38af63002d6c2ffa5b507bb9985a019d7c2ac9b2c113c66fa01d3f211b28eed2
15206 ZENUSDT Aug 25
c60eaf78fcb968c906f4712f33309584d5b221bb7e82700472b290c7d36d92e7
15207 LINKUSDT Aug 25
3cdfad72684758b80bd28e7bd3e49f0b3855617437c4e269c37d2d3f4da1fe13
15208 TRXUSDT Aug 25
b5c092b8facfa1ab3967e6db6dd73df8956ccd3ae87e20a6c857b388bb943863
15209 TACUSDT Aug 24
cdf3aba24910436cf22e2babb268df110057602ef2c8b1ae81faa3adc983941b
15210 ONTUSDT Aug 24
b67d9588d314ebfe0f42769a4a723158a46173f8ce1425e7422dec7589082f97
15211 ZECUSDT Aug 24
a9c7fd43fc2f50357695bd7c1c1cd51535f158693b614829b79259512b00e60d
15212 VIRTUALUSDT Aug 24
f9901ea93e0ca738e9a232a69d8e48faa162fc97a4739483ced5cc7f7f6ebcc7
15213 BCHUSDT Aug 24
29385e3f7a1683b27625dbd14dd57cad919f1841fe572a38321433b131e43c82
15214 TUTUSDT Aug 23
62ff9a76503c4dc29bb2a5bdc590a109499cdae73758f8da4c51370528d140ba
15215 BANDUSDT Aug 23
d8e6d71e2e3435f03324d71371481438bc5efb01a967dfe47e89c6a15aa9a697
15216 XMRUSDT Aug 23
8b0e4fe7e10aa5a7bc7c8f31e5d47a8d6dff05568f6aeedb8a6fd11a39cf2f2a
15217 ENAUSDT Aug 23
1aad4587cf414ff19cf4b0416fac85822f83042bc423f0a9636a5448cb77fd36
15218 QTUMUSDT Aug 23
0275e7d57a8e493a5927f4ed4bd195554e3c1bfcbb335f7e5e698b26edaa06e6
15219 BTCUSDT Aug 23
6a80c0b8ecf4a3d3dfef85ba90b040ce7028e503372a223bea933e67c6b1f6fc
15220 TRUMPUSDT Aug 22
ea08be7b4d648bb93cff9f0f663a2490d10e043784ddc91f95392de6c9052741
15221 DASHUSDT Aug 22
b5a96aabd968c2629fe029c95b01c7ef50972f0bec663bf1d57621d5dcdb40a5
15222 VETUSDT Aug 22
47a97fa5df191aaec536ef9e53a20fb0256ba54607355d8260984e7f1374875f
15223 MUBARAKUSDT Aug 22
86e5d46daeeb56fff268d78b6e41139f4d92f6e1216a1ca64d24021ef27e4921
15224 IOSTUSDT Aug 22
29b5378a5224a6fafb1841597c5912c0d960e090278bdbf3eb6972cb7918de4f
15225 ROBOUSDT Aug 21
020635d9528cb804ad3a02086f92a304ff1eed124881ec6d2e0da531066714f0
15226 XTZUSDT Aug 21
9d456ea6679413c9ab2840d9d3abd5f633c9f1bdd9be28292c2a79767b6486e0
15227 ACEUSDT Aug 21
a743e2c5617f62455bc83e80ad9a6be5f50f49a7d2b18f3de008cb9b40c49c9f
15228 ZECUSDT Aug 21
fd71e1e777a14bbd4ee105e0033de45e6779c07099bf892c3c8e4b553a39f67c
15229 AVAAIUSDT Aug 20
decbf9e7444ce601a00d2a3c4b8f9f99c687dfdbf7a3db921ae67b58f26fa860
15230 XMRUSDT Aug 20
eb2e1bbcf6c198ddb60a21e0779c33af67731e7499c1d3fd1bcc8a48d36d416d
15231 1000SATSUSDT Aug 20
a9d42bf27f576ae5db0cd31adf63135dffea6535d00622b46064db46b30decff
15232 ZRXUSDT Aug 20
7615fc3947e3e2e1f1fd249e1561b48ed9bb61bde4b2c3f086e0efe9bc816a16
15233 XMRUSDT Aug 20
10faa9e413f483614145156b4688f7d133dcbf8d98cbbcfda4fbfa96ce8408cf
15234 SUIUSDT Aug 19
b5267a684d2e832a5951d3805fde3048c487c56c7048a533e3d9e92c3df5e2c2
15235 XLMUSDT Aug 19
067af67909566c564559545d571f64b7110ef4ceeaed456627dd8152046af7cd
15236 CYSUSDT Aug 19
05f078da37ec2267e48c7a60dcef6482153e505575a315ebae205bde1228d48a
15237 XLMUSDT Aug 19
dda2418253c4aff272c4287b552365b893b19c25adf1cb68d27f375be6f8f784
15238 BCHUSDT Aug 19
92eb2cfeeaa8c2b66f29196327ce940a03104e8f0ca04e909cd8ce13e385abfb
15239 STARUSDT Aug 18
c3b5bb7b9d6ed3bd9e5b992fc89411e95e28462b9c23723b08fc6b31238b3bbd
15240 THETAUSDT Aug 18
e242af30451de88da52127555b4a18abbb2e2862a17c5a31ccc43d3f2be01d7d
15241 XLMUSDT Aug 18
3bd344e722bc019fe16e022e903a4e5a0385ee0662dedce5c9d2a2e5c625fb64
15242 ACEUSDT Aug 18
7ab1ae0e17f3d955ae9ccd8aa73d4e3800352529ee74e20a318f3a0e8e7818e1
15243 XMRUSDT Aug 18
8c33231f555b7c76cb982ed02871ff0c779660b742e0e413ed3ffea0882790e8
15244 ATOMUSDT Aug 18
27c1df263c2450780f3bb6f015dc03620dc9600fa658824464f52b153bc9da90
15245 ACUUSDT Aug 17
ef394185771540c34cc8a2e76d164b4d9c18f2d42816c8f53eccc347fd2d2b6c
15246 BANDUSDT Aug 17
59c8bb5d7cb23afb2d8dbf05408906c9efe94d345b76bedc47e45a9c28bb54a0
15247 ALGOUSDT Aug 17
0fed4b02adaadad0c1d47e9ad6327adc2fa50fa65b85d62333411128fdedc604
15248 BEATUSDT Aug 17
80bbde2559f9bbe1d02d3137f9ee778a06695f5d4048d3aa3113f7b5b8e9f483
15249 ZECUSDT Aug 17
afa107c3dd9b43791f471d7d19eee76e538207eaeec4517eb820b3dc61979ec9
15250 BNBUSDT Aug 16
b815755954652830fac52638d35328bd7c3f9a1a195a5681f94ce437cf2fa7c4
15251 USUSDT Aug 16
12c0974d793666417581c443299b4e0f756346433b5aa0499fa8c98420710f1c
15252 LTCUSDT Aug 16
3bc93266df8112f1062b5189a2af73cb610b5a2597ce00476605b11098b09467
15253 VETUSDT Aug 16
3f3d9b3bb5db596df5d869c914334080c838dc9ffc563d20da9a30790bfec3e9
15254 HUSDT Aug 16
18506a2864b6f8f0e46e3d5ee8e202580fa5f47054119d4c2160dad43a5c44dd
15255 BATUSDT Aug 16
f816b38cfe31920ec34db3ae986b0235c601970a1d5d2b507e80cbd2fcb87fe1
15256 BNBUSDT Aug 15
d50a6de0964a9834a081d5679800fdae3686b5536eb5c8cbd76576f220d54749
15257 CYSUSDT Aug 15
f396e6bee1a3d5b0c92ba7e989955f2779d58ea859e7195d938e80ddf049c673
15258 RLCUSDT Aug 15
5cbc01382db013b41c129133a6f2ed38ac3997582a430cb4683dbbd64811e892
15259 ATOMUSDT Aug 15
522a8dc91a65f17e052e17d90a9a35bb15246f7f24c51be629a79c842d23b969
15260 NILUSDT Aug 15
e7346b5f683d7f2a1bdb259574c96ff9303b5d38335e6dec7d26a5cf972f4b2c
15261 ONTUSDT Aug 15
fe81846d9caf7b95870c9d402cd7b95bd40b7e816a858cc57f90b28ad0a65fc2
15262 CRVUSDT Aug 14
59403d3105a72e51a90911511454cc4a342f872dda351d68dccb3343ec3992e9
15263 AKEUSDT Aug 14
93bee206b9346d035b72ebf4bed267e7248e9c5d9d77f9b6eb5f5be067cf0a91
15264 NEOUSDT Aug 14
9611a7ee4f60be7b4a33fb6f1baf0bbfa418f4af9af9377382dafa2f098b1fa7
15265 BNBUSDT Aug 14
b90840c6b409e4365f394fdee194524b13e0ba4dbb30881ee6e4e0c1d25ef436
15266 TUTUSDT Aug 14
c813026b3fdaa37a867fc88a6f62d4f2768eea57bc9e5b85366f09eb1ed26563
15267 AKEUSDT Aug 13
8c5e6407cdfd7aa9a68f306f97805425f1ea49339765280870d7dea08185bbe7
15268 IOTAUSDT Aug 13
9ce1763984d42b8df6093bec5a73d8d4666cb284d180c8255b886038cab66db2
15269 ETHUSDT Aug 13
130f980315a20d6e9da308e0a066a30f62a60fcac2075dbc46c9855663164fba
15270 TRXUSDT Aug 13
128739ae379a3bc85a921fdd94086b82f02c7254d9c17d86084c705e1510b11a
15271 ONEUSDT Aug 13
aa3ade36d14ad6bf2b1e4f23fcded312388ab482fd37c7cae1ee0608cf9f426e
15272 BCHUSDT Aug 13
95034f989f1c1a3e9077fa1833c204235817fe386927851932a5fc67b62a190f
15273 DODOXUSDT Aug 12
2fe4831d548f0d0a6358e933a147eb7f205583d8391d3401f248edb86c63b30f
15274 ADAUSDT Aug 12
14f7ac37250d2562ddca469cf6e8af2a2bddcde22c10467eddd96b5b1cbade4a
15275 BNBUSDT Aug 12
c3903ed73e244e7efe04a437a69971cf9f12173f4c2fddbfffecec623d5d934a
15276 CYSUSDT Aug 12
0e348cb2420495f8f209623572063e08d56a7a0a7b9c9f1f5f16168ae5e9637f
15277 QTUMUSDT Aug 12
13856d3868255285d66706ce952c932f566509f555db265d17f4ba53655d5008
15278 BNBUSDT Aug 12
422fdce283737e2a5b7a809fa1c11de27fea19cc20d6509dcf4c8d377bfd7ceb
15279 CAPUSDT Aug 11
f6b8729d9d1744812f284ad0e431b87b49b5a84c95b13dcdcc356c7915297686
15280 NEOUSDT Aug 11
2eb5136126b82ca65cdfd4123e5e65164be08909cfcc5f6cc6f6cbed316a4361
15281 BMTUSDT Aug 11
632218429ed12e85c9ff8249cf955c7e85128c9fd50fad15e882ff07cefe12db
15282 BANDUSDT Aug 11
bcdcf980e33fb567bc760554800ad2a17636afd8870b5ae165d8428a72e426e9
15283 LINKUSDT Aug 11
6a7c1a326c872748988278d3287ab4dd95f779116da72760f5e6912ab1a1f0d4
15284 BEATUSDT Aug 10
dd3c96f66d9e2af81f8fcd723aeb2bbfb7aa0bec1159b4f1eae846ffc9310cec
15285 ATOMUSDT Aug 10
37c1e4bf7d45d10b14fc3de7c659336e730de1bfea01a2eacf503a9f7c60c5c2
15286 IOTAUSDT Aug 10
dcee6751a507dd180bcc538fb1b95d49e19835c4e85184c70aebee864d6ff338
15287 TUTUSDT Aug 10
2338b2c866d4cc5df8c3ef84a0b2e0537f72bd7b02b69afc9645d6ec2a6c8a3b
15288 DOTUSDT Aug 10
4598e65046a64c0c29a28c2d510c4aad54b62fc59a3ff94124a02661ca8e59ac
15289 USUSDT Aug 9
56db4e44b1d40690fbc1a4caa9d55fdf025e18bf2006a1631981f553aa029c2c
15290 BNBUSDT Aug 9
2628ebd37a2b83a8cd250648c3a22ab88771dd1572702aea823522795ebb9a81
15291 XRPUSDT Aug 9
560351a9f04fd2484ff7a4a7f4a14b4a301df9ed8648653740252cb079c66dcc
15292 SAGAUSDT Aug 9
1198b2e28a48170ff5e5db0584ca0ac9ed3b9e8994f4ad1fb94f4c7c0162acbd
15293 XLMUSDT Aug 9
93c2d9c087f4fcc70d9542628049c8e533d9e58a1b0593566381d81c89f5b467
15294 XTZUSDT Aug 8
87a8703b8aebaa8f6633ec7d3ff3a9f8656bfa379515893340c84b0b6390d677
15295 ACEUSDT Aug 8
791513a9ce2e21459063419c583a846b67f5fccca95751a00ea97c2482b4f90b
15296 XLMUSDT Aug 8
1682579372f1770d8659c05a025d9b66783557256273cd21751fad4d9234d97a
15297 IOTAUSDT Aug 8
9dfa068a34e5045080395857d8b58cef75bbd97b06ce8bcf3f1b018be083bff8
15298 HUSDT Aug 8
06c283d1e04289c9c0d65641e49b5ed53f96632361b66e26aaacb54f8a5c04ba
15299 DASHUSDT Aug 8
00c6359aa7b09f44fb3ed33c87bc1d48df164de6b5c425a9b5332ff218b34923

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