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 13, 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 83 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.

8200 MONUSDT Sep 3
6fb0bae7175f34342b91ad684bb961748677e7df09f5bc67da149783f65a7c79
8201 XTZUSDT Sep 3
5e72fbeffad946afa37b9a3b190169a018adbceb5ce6fb29ec84fa808688b40c
8202 BRUSDT Sep 3
38f6ce5c5c3029644f4066dd0fa2554a0e90bc818a390e1bc6e83b6ebf981903
8203 HUSDT Sep 3
8366ef019c1947537e43f80c422a5719ff47a4a484cdf1c439f855539b6805d5
8204 AINUSDT Sep 3
5ffc42002953fb578c96d1543e06e9462e03840a552c6c32c237926fb064a12d
8205 ADAUSDT Sep 3
fe23594c36aa308d2052730d3d9431818ea42455a4496d0bddb2f28c57f597cd
8206 CAKEUSDT Sep 3
ee4d33b46ec8bab017bf4ac9642cd36f073917e0a89a7eccea129286563bc294
8207 JSTUSDT Sep 3
afc0efe1c72064c32a9d04e8ced04d8f2edc84ce2a76dbbb9380caaf03b7b3b7
8208 FLOWUSDT Sep 3
96255e5192885f16e9177f243b9f08014a3ec7c090e1fafaed13452957fc994d
8209 PYTHUSDT Sep 3
6286e523195089384b70bb991c3796c7e052d9e1a6a9561be36d3e8cadef7382
8210 AGTUSDT Sep 3
62e7f21acd391c2a91311e07247bdccbfb996bdb829f4bc80b15e68eea23a933
8211 OPGUSDT Sep 2
b6709334cb3bdbb47aa1ad6146fb65a6639f3c8d33ea9e2e7c125593f3091d4f
8212 SAFEUSDT Sep 2
79b37ac3d85e34b8ae6500d2814b2e12edfb3d2b19fb627b31b984648e929e8b
8213 ROBOUSDT Sep 2
1d921ba1d295771e67c7cc8a95e967d6f61efcd0467278106ba2a9f91dae9dae
8214 ZRXUSDT Sep 2
cc565847f3f3b428dc2d26a72cae95ed87c7180b415b4ff1da5719b30c10131e
8215 AUSDT Sep 2
2473b060e55341e6522b246b13fa8fcc0d5109c177286677f10182e11bf45249
8216 ARUSDT Sep 2
a55c813fd400c18651f4e880ddd0b843544fc5b7e9bc59355bbfda4f28710c86
8217 PENDLEUSDT Sep 2
8b91896fa8161633f51368baefc4b3b967c74aded14cddfc7d8f4d2ea2dd999d
8218 DEEPUSDT Sep 2
d24fd608bf51d34624958bacf35f40aa2939221afed519a77c3111b426764a12
8219 INITUSDT Sep 2
9f916bceaed146bef064c25ae02c29ba3d2847b688d6f049f0a40b885147c815
8220 YGGUSDT Sep 1
6977d8debf211326ffc00e1676befdd4c769e093e2bb3a221667984ccf9403e4
8221 BELUSDT Sep 1
c1b318d1b62003eb93c084fabd32e1a35592d15512d452f48693b34e20d97843
8222 LAYERUSDT Sep 1
3da0f2969c779d7addae119fe21ea2adef23f0019a58d8e6f0e6316b4ff43110
8223 LUNAUSDT Sep 1
d19856ecfb60ca76c160f391b9cbdfa0951e1a7a391596729fa49781f915def1
8224 BANDUSDT Sep 1
10efa705a58d10719e9be878496d5224d5d59c67a261d18df3409634afeddd5c
8225 FLOWUSDT Sep 1
4d79eb3fd579c57edadaca51de637fd26582604af30898fbb3a481b66e22ab45
8226 SFPUSDT Sep 1
372be449ac83adb9d12327818cfa15170852702f1e4a1076342081bff7029334
8227 RAYUSDT Sep 1
b305b9fef8ddc18221e204d0315649c113142bfcd3b28f3c595b208df2f07c21
8228 MINAUSDT Sep 1
3a2790496ddfa6b210a29f9c4328088559e14954f1cd25d7d9e64476ebf44b22
8229 TIAUSDT Sep 1
3ddee79e59e5806ae6bf012255cefd30c337965ddf0492d4eb7458a29eca9245
8230 STRKUSDT Sep 1
ea30386aff9ac87a022a9393351267fac188e37f6ce091cda49a2732dc42b3fd
8231 JUPUSDT Sep 1
e70a3e7ce95ee0e240e3c28bcb4a01d968a7b36fed59c0e65da45c230245443f
8232 ZENUSDT Sep 1
2b5035e5452c9cbd9adfc3a4afbed432367bf58ffa6cf85319d55600dd2b74de
8233 PYTHUSDT Sep 1
8afb370c638abe401e7606e765289e9627606083552be0f39cdca6fcdc6fa937
8234 JSTUSDT Sep 1
7dc7f1ab3f139235c41d0e541a574baa5777e7c1b3f8eac53fa012c5137c0534
8235 HIVEUSDT Sep 1
56b74a3f0fc3522634c887fbdfa3b73c62613cc61217dde64717e2dda77c118d
8236 TREEUSDT Aug 31
54b2103e82bd110b1efae3ed4fb7469e665ef700be194602ab709a41403c253f
8237 CATIUSDT Aug 31
9b464f503fcf80d357ff20b312a11a935f63c731da04a6273c3f496fa3f4f32b
8238 SSVUSDT Aug 31
9f775ed44599857396be64079ad44bb9efb6a5de8afc200462e48b5497f57c3d
8239 STXUSDT Aug 31
8878a0e453cbdbd90b56af9e4cc7f4ae283bd9e534002d767d90f49b9caa4218
8240 KAVAUSDT Aug 31
958ad2fdd840a01e605ffac12ac42aced0a795ba3a5685786b39d8dc7e184c41
8241 SUNUSDT Aug 31
e4ed46aae14598252cdd32f40ac0a3ef899e71e6f4fbfdf738dd7e6c0b5ff41c
8242 FRAXUSDT Aug 31
675b712ff836f915e326aef3007f5eb3de6f99e93bfd632aed2c3762d51cd839
8243 WCTUSDT Aug 30
42d33565fefbedb228cb3ec434fe8b9b14fc2754cfa8762ec5a4089d2a23a9eb
8244 YGGUSDT Aug 30
ea80e8c4d311bc373bf8c7cf639cdc41fa750b6579fc636d55f56576b274ff8f
8245 PHAUSDT Aug 30
5a82967dacf22ff4f99cb4369419ca47754a967383b7ce6590d726995fbb8580
8246 CHRUSDT Aug 30
08e48fa121e8d49b19deb68da05160f4e2ff5a3a062eff58b85fabe90e3a8e11
8247 ZRXUSDT Aug 30
80cd97a7fd578a0e4d2f0797a6f421d401e07b491a1c2cf9d020b56101c6730a
8248 ENJUSDT Aug 30
6d6d86f411b4bf06462672068c2c329c7965a9a4e77d9684ce34c0f095073989
8249 TRXUSDT Aug 30
24771fd9fd315be9f187aff3b38cbeb68345eacb7f6f70a75938fe40be600e8d
8250 FLUXUSDT Aug 30
1f201f02f24702df748ecb3fe4611125bc8563b16b6a760bc1b640a18ae770f0
8251 BARDUSDT Aug 30
a4c4371e603593e653e4a8b6da104dae3fe83adee88ebd2a596793864b0691c1
8252 BANDUSDT Aug 30
332540f3968a2a3c9d4bbf4ed9e8be3eadd768bfb9b018ce4559b1a84b398f8b
8253 TREEUSDT Aug 30
0899655cbab9c469f4c54b3076687a113484da55d812343d7feb6b2c75bc6bd8
8254 PROVEUSDT Aug 30
0c72b1d7693814ea1f489375333f7adc1de456711fcebfeb3a8454af29708e56
8255 MIRAUSDT Aug 30
9c3c109ec3f0c9e68b29e6a6a7b4476e5083332e8c2f2a51f37a6600db2123e7
8256 HYPERUSDT Aug 30
ba9cca0c94ac284fdb3a20db28ca350fe1fa980b0e8e5047e8fee65d5004371d
8257 IDUSDT Aug 30
9c58f810763a8045cedc949459b5557678da9b7174ad0f077e541301a49392a2
8258 FORMUSDT Aug 30
f7e72cab7fe38d513b7cfae8dc8562faa39d260cd0880e6d52b43a531b2671fe
8259 TURTLEUSDT Aug 30
9151dd33cb04f8039695a0c38f45e39360371fb5f568b4af9da9a184808cf57f
8260 APEUSDT Aug 29
c725a4eb957401e297b7e6bb84c0ea4b40784b31994cecdb8522d9ef366d177e
8261 PLUMEUSDT Aug 29
dcccdb051b040076e01b3753305a583f11b15a7636f2012289753b1febcc3aa4
8262 REDUSDT Aug 29
ef02922b9d48ffceed6e4aaedf32dee8b530045f20455ec51785bbaf2297c94c
8263 TURTLEUSDT Aug 29
2f78ded328ceb499418de36a6f88072ddd623864841237a811a59e07e839bcc1
8264 KNCUSDT Aug 29
5e7a8e3970c751e95c81324dc5fbafc6046473d3693ef7973e21d6607ddfd126
8265 CTKUSDT Aug 29
5b4c3cf26df6c5f3ea5ab380739cc6624792c513113a72daf416c535ce301d7c
8266 EDUUSDT Aug 29
bf359b10679d614de0cbad4b8e85f4f8f03007c0fdcb51dd9930449419b54c18
8267 ONTUSDT Aug 29
6df1f16574e4694f97f7730406bf3d856eebe27bdc8e3f64358010a1a5383f45
8268 MINAUSDT Aug 29
f273404b75227d2436893fe2cd03452d575897f7b8464e2c9ecbcfc647380203
8269 EDENUSDT Aug 29
b7ded76df29c8c474519ed4b683449e74ad7d233a2f9d07a769e8c80d46469cb
8270 AVNTUSDT Aug 29
29b8d0a9e0737b02ee3dab4dcbc275fdb919c7469129ffdc44618cc655e953ed
8271 ZKPUSDT Aug 29
5f56f486ddd36595e7b9dd0c786cc885ffe90b4da01c151ef326912a660b70ef
8272 ERAUSDT Aug 29
a6e69b087728127af41a8026f9f30f86dcd5870d41d01112970e5f6759d215a9
8273 STGUSDT Aug 29
94b0751b72f1c34a74dacfb1ce3c0084b0c7b70c69d4c977dc8880500a32b01f
8274 ORCAUSDT Aug 29
b042bcb6914d6873cfb3732867ee43424c4b0a5f1602b39b101579a86ee41faf
8275 FFUSDT Aug 28
e5d5520cccef6de6a158daa0e359a10048081072847c8d1682d80130fbf3b213
8276 DODOUSDT Aug 28
7a20a345815effcca75fdf318253457b896b3076e1f666eb3e63d67d9fe2368b
8277 LSKUSDT Aug 28
856068ef1d804337ddcd3f153cc51393b29715129281673636ee1825cd6878b9
8278 SSVUSDT Aug 28
375611456ca1090613d80d0621472181af9efc7adb178025d2872b05f9215f30
8279 JSTUSDT Aug 28
5b665d3e2dd194af15adf1bd8c2641be032f4a6eb144f2bc315ff4e13321044f
8280 BATUSDT Aug 28
09ed75e0445306e739609b7c6ccfb006ebb3a01b3211f2f84ef0ce8c9857ef62
8281 EURUSDT Aug 28
6d5389400b5fdbad02fe094e03d1bc5567ad246b56d2252a578bc8950866f116
8282 BASUSDT Aug 28
47889750ae3632ef6d949ee4958038c12684168c0ab9d8a2532999094aa027e9
8283 SKRUSDT Aug 28
77c337c32479e3d7c199bc10d43f19cb2a7ed942dd3cd260e048a7652f4a07bd
8284 FWDIUSDT Aug 28
617731479f8d86b0bc2e5ef0b13fe9f27568f82ce7318fe9f95a4ae3d57623ac
8285 BBXUSDT Aug 28
0805784494213072dd41c2dfa3e566ba3e31e84916a317d313a62d92ade9cc39
8286 TSTUSDT Aug 28
af94ccd92eee1c3fbf841c6cc227c4496baa6ace7464a01ed059df90c91b4656
8287 JOEUSDT Aug 28
c8874e8a9420892762391eb8813cf761d3c74db600141a6f79eebf0fe3f7eb0f
8288 CTKUSDT Aug 28
d80ce400943c2cb529cd05e28d128b13b186137564c33aa2f78d57a015b4cd35
8289 KAVAUSDT Aug 28
824a33da778f8ed04726521264f6398d476f42f86ea72dd606f68ec016f6975a
8290 FLUXUSDT Aug 28
a2e61aea6436bfbb9f0eebbd37195930ef9c43255b847f271b7dd1f4981d9ff3
8291 METUSDT Aug 27
32a65e1631e63f37cb82f072dc408e03a29dfa6c88ca8ae9f3408d998800436c
8292 SUIUSDT Aug 27
e0ac7cc6d55a232d77f8195db96b9c9dfbab110947f7fcb3c388099126b45157
8293 IMXUSDT Aug 27
94c4b5a3efd6af6da740838908aea0ae9fe956441a097fe23d77bcd1db65d0c1
8294 PARTIUSDT Aug 27
1b53f65b2850eee8020b6da990fb0f7a6983eccb2a42b0e2969f234126736a9a
8295 API3USDT Aug 27
54b67c733929a2e8fa33f98ef8c9235ae8fe307e6b1d636b9f7efe3a2af4a255
8296 DOLOUSDT Aug 27
8033133f3c851bad3e805cf60d392f2a5955869606f72477c971e896b6bfb26f
8297 ADAUSDT Aug 27
3c4502290e10483be618e7e7d11a574e1cf3a986b42eb33e08871759a82de02e
8298 TAKEUSDT Aug 27
98800b24462bf235a2707a08c7144d96d91b73b146901c7e252e46b8d8f11a87
8299 KMNOUSDT Aug 27
408ef7cf3a42b406d82107878344e3383b1d7f4da9f5d31ce09082a6aa26fa1b

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