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

3200 BMNRUSDT Aug 7
b0c38a4f822f9605c81aaa03d310a8151044844bce0367bc91215db251a3d07d
3201 AXSUSDT Aug 6
293f13b47b018aa10eee08c67f9aaeaeed3bf00059b710066dfada1fc3f88c2f
3202 CATIUSDT Aug 5
40446cdee1ca65210cf0de9d4b2db0c2c0abb0d13e8d3ce413419e5dbaf58d1e
3203 ACTUSDT Aug 5
36d27af224286c5a7751bde38434f8afcc99be2b7c7393d9ed8ea361a4559cdf
3204 BASEDUSDT Aug 5
f1f186fa35b8b2c6d13e8fb72d539038e178d7d29affe00ef39638c9bec00983
3205 HUSDT Aug 5
e7edcd40341fd0f22781110e1bef99f536909b79b49a49206b78aae524900f3c
3206 FIDAUSDT Aug 5
3d1896559e4c6105de7900f9a3ee79f1a12e48ead3a4aaf2374be88e420e97c2
3207 LITEUSDT Aug 5
8a895d81a25b2afbd81beb04fcf2719c233b1c4ecb0d4e87ecfbe0e774f0aa1c
3208 NOTUSDT Aug 4
ba13ef5350699ffec6dce5df0c0146025a9f2347cba45acae8db4fced8227a37
3209 CHIPUSDT Aug 4
6b3b8acea6e2f0dccf3ff3d7de7d32dea4d31f327789b0e7f9356a9bd72a3d23
3210 HOMEUSDT Aug 4
7e7e97081a35afed3018a69668290769190282f1ced6b1ba666775e77f613cab
3211 GIGGLEUSDT Aug 4
4f58acf6c7461a65916505dea99989c43fb744d9180e0a54dcd8e4fc67d025f0
3212 BLUAIUSDT Aug 4
e7e29674e47cd66389d6a6e5b58a20dfeed8f2d2c86e64fb2531d262663935ff
3213 KGENUSDT Aug 4
dbabc027d90410cb8e49f4803adb0ffc5526c844e092f94ef42735ea9415d408
3214 EVAAUSDT Aug 3
d91f606373c6a52709dd0a79dcc03a6a2ff973c226193c6a5549bde5e6444756
3215 BANANAUSDT Aug 3
33c92e0ce15fe43d6beda5ce19b5b309329ef7feb36d34b75adf978c8eb2555a
3216 CBRSUSDT Aug 3
21511d22a380690853864a7b7ca23194f7b8ee08fc10a1ace22abbb74de733d1
3217 DIAUSDT Jul 19
4aa521d226dc2b07d5438d263bbabe68411d24b14d3788d467ee7391e22c9b81
3218 ARKUSDT Jul 18
7fb753adcc0a53c57f91bf6cb838cc156906a72ca3180a70e2c6d035066bb765
3219 BTCUSDT Jul 17
23a3d5403a36b592cb23088a2e53077bfada066dccec308c3ddd566ddbe28c0f
3220 MEWUSDT Jul 17
6e5171c411bb74f288ca92729480cfc3e45e78069b2acea73758a4f3b3b6e139
3221 CROSSUSDT Jul 17
4f761f1a78c2c71d3efff3bdda8333447ae7079359fef11cfb269d523fe258bb
3222 BBUSDT Jul 17
93371d0aabd1ba9861832efab495c25ea12b6480fe13760be29900a40536931c
3223 BZUSDT Jul 16
566472e2b6e31aa57bb7e6b128a06a33d9d890ace23567f213b104aa68497ac1
3224 ORDIUSDT Jul 15
a80d0355ad39c3b6916a459aafbbb4b36935f07efd1be4ebfcb1fd50c9475df0
3225 NXPCUSDT Jul 15
167b2f991bb0f3ae4c004ce200100b0086da25c90da60cbff205bfcde39c8afc
3226 ALPINEUSDT Jul 15
d5df84e3e8e275d57c9bd959860ae4a40d2bfb2948973be1aef6430af89ecdd3
3227 PENGUUSDT Jul 15
e5cdda20fd69772c58371680ef5415ed3baa26b49293bdb07337d48d3cc97503
3228 LQTYUSDT Jul 14
79d188d28ed6a554c140be25a50eb08acc7994cc4d9f9c43403d9a3572c33ec5
3229 COINUSDT Jul 14
4b0e6e07154dc96949bf42d254c69147958a380f81b705325ce9820e693b6ea9
3230 BLURUSDT Jul 14
e792d0509c072fa68537d7cb612cbb1ad1c4da1461a4e82dd45a65a384f154c2
3231 PLUMEUSDT Jul 13
f0358c30557a9297655fb68aae5b33cefe1fe25d9ad347dd4791fd55821fe309
3232 CRWVUSDT Jul 13
fe7ff36de48b0265b6c2ea9c424f6e9ab15ab328bf9a3f719ff4a507be1d19de
3233 PIPPINUSDT Jul 13
7b3ff38352a1c2482de30ab5fe88d37514f5793d3ab65411ed7316ccab73aa71
3234 MUUSDT Jul 13
b16abb78fb4c2e29e0d630cc83f7b3ff25c713cdec34ff8125bed8dc6f355d86
3235 MELANIAUSDT Jul 12
dee03e3cf31013762ca667b8a4901818c6318e0449829c9e71c7ad9150e0fe1d
3236 PUNDIXUSDT Jul 12
a72e8ec7616e58b6bd0eef84701c7f8ca077d08d210e6d5c092a3fef7be834f2
3237 BREVUSDT Jul 12
bd0c76a1f42d95f34c6aa2860bdc3b36f2ae7e00ca2f337a194702f1b6bcfce2
3238 ANKRUSDT Jul 11
a803397893fc3d504057ffded27213dae8f2521ac9b5d5a80a7812438c8df51e
3239 AZTECUSDT Jul 11
d46348af05d57c4cdb437dcf3e2033dd76cfdcc2bd2b21c4483de3ab7967e2df
3240 CVCUSDT Jul 11
999571618043a75b94b115c6131850aa8cf6dca9192a9bc684ec2c8c77266569
3241 B2USDT Jul 11
3c807d1b7d64055c914e16115c71f90528d173997114cabed750b65aa40b0251
3242 DOODUSDT Jul 11
de51c102daf008ed68fe419463c443c04cfaf279b481082c468821f04c0f3ba5
3243 CELOUSDT Jul 10
e940f384ff204005c6eed12368aead9dba1f92913298e17abd0ac80b9492d340
3244 PHAUSDT Jul 10
2ceb2e92e61392511075699c87ded28521ba205c8524dd56d31df23e24e4dbdf
3245 CUSDT Jul 10
4a3f2f475af8b65bfab65d814806b0acaf2787cc53fb28c77f2dcdf9d4450d59
3246 MSTRUSDT Jul 10
821eedd697adffe9c5667aac2f9bac04717ee2fd1fc7fdac78410a37c3c3d0f5
3247 IDUSDT Jul 10
9dab65ac07eae747d21054c6d9e826aee3d06fc29dc87c443e548d75aff9ba79
3248 ATOMUSDT Jul 10
5f119f080a9920cbca2d2cd863b313202b8370068dc4b3599c25e273b9a49501
3249 PORTALUSDT Jul 9
2679128343199780b71256ba3d7907eef71feee4b9f93d6b9e7f7b14497808b5
3250 AIOUSDT Jul 9
543324e1137e78905df009cfd7d8d233a3e26a71b880821f4cb18028099f8c8d
3251 BBXUSDT Jul 9
45e1ef8ea5d29df50fdb8f00f35e6338a06a00e8a1cfb2088eab2a338005609b
3252 CTCUSDT Jul 9
c05a15a4a47c17598987e283d2ffece98a9d103a4a4e53a8168ceb951ea9fecb
3253 GMTUSDT Jul 9
4139c563913602b262e99c8229a3820524f83985a8a205c442721c0e127fcc72
3254 ENAUSDT Jul 9
63592a001705c888c605a3e68967aec6cb99a13aa8db283bda9f138d9c8dd3cc
3255 MUBARAKUSDT Jul 8
f8eb07119a3695d07291e18f430c431a1da00822b392443d043537929473fdd5
3256 BASEDUSDT Jul 8
5974152a69d55ea9b419828f362587c10c1ddeb0cb29d100031753e41fe6e53d
3257 HYPEUSDT Jul 8
ffbd04ed7a139bd30a54832da856b93954743bd6b25047a69914cc05371bd98e
3258 COAIUSDT Jul 8
50daae3e060645236c57a6e81c0177834662ada4853d27153f408983fc3e493c
3259 AUCTIONUSDT Jul 8
76e5dc4c16a20a9e5b05f2eac6e1353fcb2565eed217d20ada104ca308c40fdf
3260 HANAUSDT Jul 8
d267333476dea88090e2efd7bf61a49f3ee0c623fed8d21f6490263fbd12f47f
3261 AGLDUSDT Jul 7
6a973d368febd453c9f69cf116f764b6612045a7a1617a56ff89366fcff0938e
3262 BRETTUSDT Jul 7
d4b821d5e8eef89989d943080398d96e9b25b8b7ef748212c9e44d953d39cba1
3263 BANANAUSDT Jul 7
1654005cf454f66437db22af1f62053752203c72d5f127b9b317ced4618ed947
3264 JTOUSDT Jul 7
06633cc387b1e1350335a2ab9ed2f7cc4c48e41dba087ae99cea36682b39a812
3265 OUSDT Jul 7
8018c332622327cad05de6f1dd1e150bbdd3c79db4c1ee862babfe0d32503d6c
3266 BLENDUSDT Jul 6
4fb8013466e822b1921399a77a52eb2b4ecd76ccc963511bead0dab76e00ee08
3267 EIGENUSDT Jul 6
6e3b5f3d1ea4a8cea59a495b145fb8bf135e4dc665f074b5decbf34388667295
3268 LITUSDT Jul 6
510f8c642ad9559f9a8a00eeb4db1111abdb3a4113dabe3e73f0220c16e34fdb
3269 PIEVERSEUSDT Jun 18
b2f40ce1e27fbf9f068f2cf53f584967d2febd0e134369f2f628ce53776cdffe
3270 JCTUSDT Jun 18
893d17b22e12f97787faecb63a7e9fc132b24f9cc67b2e60129e1d3d6748ce46
3271 PORTALUSDT Jun 18
fd6029b509868c7ce00687d527fe642bd71f4aec08a7062df0ab2892bac1ba69
3272 CLOUSDT Jun 18
b262c21eba7a5ec5e45330a3d0d2ffb64265a813c09c548b2cde6ec48ebdf788
3273 CELOUSDT Jun 15
bfe8b813fb7a3cf79c737adfd45cc9a6e5cc876aa033fad509d8b79a948269db
3274 ONTUSDT Jun 15
4663df127f9d7b3b6fcc197ac013ec9d2599d926f2fb4153173a33fa8392bf7d
3275 ILVUSDT Jun 14
9c93e6746b0049d3ba7b351925d1394d4356dbf2e5773f27540d9994f525a3f2
3276 BBUSDT Jun 13
5ce43a4a2e6201f72ccf5a5e4a161821c995888b0e15884026d067c2be9845e9
3277 ADAUSDT Jun 13
b6c03dddb01ef9937103ebf827bd4d7660fb5ef53245e61f87fb4850c49bb17a
3278 DBRUSDT Jun 12
1f3c54745078d1f1133719d854b98cff42499d968377164f3e4b118e234f3367
3279 1000000MOGUSDT Jun 12
ae3e69dc730b605b6db7ee41ba2042a5882ea8607de153fc3f30f04a27746555
3280 ORCLUSDT Jun 11
3ec27f2bf7d995feb5ccb40495e45e54f5ec108b3f3814ae443a99fe77874b18
3281 ICXUSDT Jun 10
3835b192fe9992adf83818ed4572fe6dc0cfbda4d367d2221cbef64812093a95
3282 AIOUSDT Jun 10
df901f992673b1211035d7e1d7f5c59d6984b8f1707874db5e291f963a9ae1a0
3283 REZUSDT Jun 10
5d0cb09b6d8736a743b7c85aa8f5d6c8b70049723d6866eaf1661113beba3290
3284 MIRAUSDT Jun 10
ca96640ca03443c381d4705fe1dfeb3f0615944a98a20c4c4c289e189551248e
3285 ENJUSDT Jun 10
4a3c74e59a97e9fd6764dbb28c1f314c0314b20a5966e25df0899bf62d9e920d
3286 ESUSDT Jun 10
c4f88db7e62c932b72b185bbd03693e223a38d9e445cee0bf24cffad41544d8e
3287 RKLBUSDT Jun 7
ab189c5cebe05d5ae970fbac6426cb2eb57e13934fe2b218e1a0dab918479c88
3288 DIAUSDT Jun 7
9cbd6727c4393e56f72244aa2866bdaf9887dfd59e6719a07c5b9c1a344d8b19
3289 OKBUSDT Jun 7
47e6e1f33171ea1ceabb048fb01a0c78043db36f1b5f124f2f99d7a889183ecd
3290 MTLUSDT Jun 4
522bf48467ec6b9ebfaaf065f3830651207c3f6c00ebddc8b18b42a87d6a1680
3291 BATUSDT Jun 4
701a9e226f9b281759b8d315406a305d2cd7932544c75c34925a7769477f0fea
3292 INJUSDT Jun 4
180274d25d5846c9f88c8a6e03a8aefd653ef4d09a835fca77a2a753e6ea40e7
3293 MTLUSDT Jun 2
54a461d3c3f77f8fe1aaa11e770f9e25c1bdfccf2608f0b7d5b08f92c24e46bd
3294 HEMIUSDT Jun 2
df48096c75553f93d8665f6aea45ccee7e38f456a348cba551a390e247af6a14
3295 ALICEUSDT Jun 2
e364407376138e711fafcbfb7668a76f73af3df1fbd600c5aaa45a925c1e43bc
3296 BIGTIMEUSDT Jun 1
3e4fd28dce64eb7c3ad8552b244b1cda56ac5c2f0b8e7de90838cd08d6af52b5
3297 AZTECUSDT Jun 1
8ce0549353bbb46777692e7692d3a21937443aaf228639311801cb2e8e191b38
3298 GIGGLEUSDT Jun 1
4ed4542b44c89af6266d20cf4e4a9895f4fd956c9a01f4a3c4f763a2291a8d80
3299 1000XECUSDT Jun 1
d2f66e05e198ec1863a398b8e8db5cf88b1dca83dfa7b7d695bd57b8a05ed5bd

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