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 14, 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 111 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.

11000 APRUSDT Sep 28
0e1eb66252d6449ed6a5f63baedd83d12a4ddbd5b5113b736ae337da3ac17900
11001 NMRUSDT Sep 28
90a51f43ef626d5a70131884c36b2e63169dba1ec70fa1484eb1aeccb6e6d9d4
11002 NMRUSDT Sep 28
590a74ae7145b56c8f0bdfc07d36277197563c3240b2c9d1c0a3bf280d455183
11003 NMRUSDT Sep 28
9d436f3587851fc460803ae546012520058b8bbb6f0ee3fdd9259cfc2728ce64
11004 ZECUSDT Sep 28
a33e5b695e434b1ce7e30f9fbca8db9746af79b479e88ca82a08c374f4ba3f72
11005 BNCUSDT Sep 28
d7b852d3dac9f8bb59d539d36b59b4ec5b33dbd2102699e2e092cd5f0ab6b450
11006 ESPORTSUSDT Sep 28
22170ce056e7e5cbe904e3eb1cd923c3b3743fb776a28092b224842117368789
11007 JOEUSDT Sep 28
e228cf6f37f662b98853b86da3dcfb09a6cc9ad90e8896809a21fa2a76fb4e44
11008 JOEUSDT Sep 28
da16151d8942a3f87dec000fcc9230bb0fa8930590463b37f12ee76f6ec8d102
11009 BNCUSDT Sep 28
b4e73286561fdc823aec903cfdf736842ceb15f7e83f66db835e03fff7da8541
11010 ESPORTSUSDT Sep 28
e666c7b53234b3bb0e72cce795aec951c4c9428c32afe3cff2c50bffb7413857
11011 JCTUSDT Sep 28
a52b0efe20e04135923b2eaf70e9d90ec2500a05ec1656170ee07b573a79df37
11012 KAVAUSDT Sep 28
43674a1c0a9ea3871518621d01b946bc5a165bbdfc6f3fb3d99e772abbb6d327
11013 MAGMAUSDT Sep 28
a034166da3be9135e8af4cc102e969b8f9a0104b4931a0a97efba98df818139d
11014 BLESSUSDT Sep 28
5878047be2c7741c6a7bd36a84e699ee5d722e9568f8cdd1efca332b940afac7
11015 AIOUSDT Sep 28
50bd14b951e8a475a4f632b4afeb41945f8dcd631db1d6416723042e4573c235
11016 ZENUSDT Sep 28
16ab1327fc77c08c572b2c10eb81764f7a97cc8f7cd1cee4ebf3a7ac466d7eed
11017 POWERUSDT Sep 28
890519f43cfea3b21057180ee788fedc58bdcdd1847be8c25cc8103b5912de52
11018 SWARMSUSDT Sep 28
50eced2404a3e5f90afe0c355d3625e9fcda717a4f1897ae51e0f7f17b9a9a4c
11019 IMXUSDT Sep 28
7b21f7196dcdbbfe0abdf479c3fccbbea4a7fec88ec49cacefa48e7b7babddeb
11020 0GUSDT Sep 28
42255cce858b3f7d207806a9083e55a0a9f67c76b20ca94f4992367a18caf311
11021 WLDUSDT Sep 28
80103ca0ffa945aea33b4b273ce6cb9e5142e004b05e52a2befd7afc9b37ef9f
11022 MAVIAUSDT Sep 28
dc8abfb2418d4c6a129643d11a3544a3190f8998b6303bee677be410180b1f1c
11023 TRIAUSDT Sep 28
0b6e6a6d3308778bed23dd7890d0d0ddd60e454ef4bb131d86bfef3c2d8cb9de
11024 RAVEUSDT Sep 28
d8ea89d0875cb79eff6761d938d84cb9b5d0181feb5f079f3e85a163c8186d23
11025 XPLUSDT Sep 28
b0d509a859aafe44e817aab06c62cfc7b9cb6ba153f09f2972fe50666005a1b0
11026 NMRUSDT Sep 28
4f3baf1699feb18ebd24a3d9a02f46e3018a915c6e2cb23c3b90ed9323e3786d
11027 PLAYUSDT Sep 28
feaf30b1fd1d5bb40b65d890055d1c84a2781c75052c3defb1bbe0ac9cdec09a
11028 SKYAIUSDT Sep 28
4ffbe5efdb55d8889de5dd9b8ba8405e44ba935a1efa9b5c7f3a56e5e33b5b9f
11029 SKYAIUSDT Sep 28
e304759204f0b6771b9b48e57f1ab7b5019036c9292f6dbffeba02187f0abac6
11030 NMRUSDT Sep 28
251dfbc95be5669006f7c39d533ca03c77f8cdecebf6664cad7aae6045a7a09c
11031 HBARUSDT Sep 28
f9ea29420c7eb892a90778bc95840124adeb77025dbcee43a42fcdf32d1c117a
11032 AVAUSDT Sep 28
5f12a0ee186ab8c6e221027e3147e0cfe56e26c633ce6b853476228c9130a5ec
11033 SKYAIUSDT Sep 28
99d06d1ae2c2582bed81957f8da722630646451959a518ecb74c9f70566065c3
11034 SKYAIUSDT Sep 28
5bd9afad10a650f4bdadd57d663bba6f97efe3b9a6cc5fb31feb70a99b013855
11035 ZESTUSDT Sep 28
bb54fd3192fed5fdc0cee1cdca7d5fedbf4748a1eb4634917966f930c6100b3f
11036 NIGHTUSDT Sep 28
c307c89c07c16faae6112a1a88022e43ecb6c4dedf4f03fa75554456db8b6670
11037 FLOCKUSDT Sep 28
a8fd97b209bf4e0b71d81b676f0e8fae70ae75a01fdffecc265ae129e765adf0
11038 FLOCKUSDT Sep 28
eb49d497fafb0e643e31de07c12a88bcda0f4a52bb76c349d1dc8b912ee3bc69
11039 ZESTUSDT Sep 28
bfeee86fa4243ce1e6b643bf819f643b28318bc306cd790e96e159b062460121
11040 BILLUSDT Sep 28
53613c035fcac663f7c5bd448fb4e8e3393e1dda9f23e839db3634444a8bcee1
11041 SKYAIUSDT Sep 28
bba28d9281d519cd4e4a3f9fee621b8ecad4f4b2aa928b691f54ee7a5cbfa3f1
11042 SHELLUSDT Sep 28
562deaaf67dc4a9f3afa6b2384194993cd2a575b9cf79b3fcb0cd3a53d302c7d
11043 ATOMUSDT Sep 28
2c997675d39c8ab00b1b7cd380bf03f5681949e300a948b8308c8a2139f90933
11044 APRUSDT Sep 28
8a18fcde2fc24f9bd514f026318c274580ff538a1eeb0be6eaa8c8061f57aeba
11045 MITOUSDT Sep 28
0974dca3c4eaf1196a08650abffae8cf04ec64496dc06b2ee2748fed27712838
11046 NAORISUSDT Sep 28
484ef5f6cf708cf53b48444d21bd81f481b760d15812792bd55c2594b8890384
11047 ICNTUSDT Sep 28
713f0a1db366929e874ea27952a7d335a78a625fb461c1dc8850d01b006b0b33
11048 GWEIUSDT Sep 28
e3bf1bcf97f88df960b0ca1e50fea21c19db122088817afd257a23e1116c1363
11049 LISTAUSDT Sep 28
929b1f7d64242db5a8a4e82e615b0b032a9b3ed1f9ce32d3a2c2d97cdd4fe868
11050 FOGOUSDT Sep 28
611d4352fb52e39dbf8f85f3e631b3eb49302ec9560c957b98c6b241af004deb
11051 ELSAUSDT Sep 28
35f93b39b4870f994a82cd479e9eb7a7a8a79bcd33164fef99da6fe712414575
11052 HANAUSDT Sep 28
14e416d0dbda93b5c1ded0fd4e5705ebd80b128fdbe94ae40492abcd622c0fe5
11053 BSBUSDT Sep 28
5ab57c79f3bd4a6b8851a4f20c5a58241d9dda0fa7a3b18b193ffa3778bef12e
11054 FOGOUSDT Sep 28
9718d0ca1ab6bbce492a5a56fd0cff4c800e33a97391d314fe05277fd430bd6b
11055 FOGOUSDT Sep 28
f63d0950fe0bea260fc52e39fea513374c60248a9d18f9420f3b83b8c7a0fafc
11056 GUSDT Sep 28
cb248a971e5d08e129d33cec0f35c55b42f9b0497ef0445f2ba2c104efda73ee
11057 AGTUSDT Sep 28
bea45e24b7a2c3051d2fd50f9b3e5c2132f94b3b0679c995661331ac9cd60ddd
11058 TSTUSDT Sep 28
6d558118cac8d8c794c5553b007de7c9a34cd1ad9fad70b2eceba33c473816fe
11059 HANAUSDT Sep 28
8944da2aaf0d038961dff392db199980c74fb7b157e2ee053eaf7ef886c3dd46
11060 NAORISUSDT Sep 28
fa7876fed0a1c4b49d9c2ff5c77f9bd6f53c33682a9a83e6966700f4f7f2c2dc
11061 BILLUSDT Sep 28
96fc25ade102fbc59447e8fbb1fab9ada857cc9c7b4060c431299e91f7fb4eb1
11062 AGTUSDT Sep 28
40c3864a4d0dc6e6a22d65f5ea6c07d26cd7f770b2fa137bf68800f131f26546
11063 ACEUSDT Sep 28
44c8e7a25d403ffdfd239c32856f52955789e5e003e4115b28f938afffada90e
11064 YBUSDT Sep 28
41f0d8b8b861a5b229ca49f46a98e74737a6656e528e5d372fdc63dc3cc7b7f1
11065 INXUSDT Sep 28
1e21fa2c4cc7d1c5c66fd9a1058228005c54bc81e627f9967233ea72479b4ad7
11066 BILLUSDT Sep 28
61dfff716b338ec931b3f9e93feeec94545c5146876da2784f1c907699cfd83c
11067 FARTCOINUSDT Sep 28
db0a910660e1cadfcd31850b10407d87e35e3b358d4c2332211f9a50616a8e09
11068 PONSUSDT Sep 28
e4c4f3eb9da1789ffadd2eaf35929a641d52b69ca418cc2d7d9122f23ad81687
11069 HUMAUSDT Sep 28
ff9c63b6f0af9d2c4d9a0a45e4ef83f24296edfaf61126d625e5bf5e35ea5731
11070 MARSCOINUSDT Sep 28
31644d99475366ece0b3eb5b906ccb9017fd40656bde15e96a124f4eac262850
11071 HUMAUSDT Sep 28
6038af7fe82d28f46f055838bb8313adb11eaaf12aa0a72b6c66f535e0a186c2
11072 HUMAUSDT Sep 28
43c19cfdbf3d5a963e0d2304ec1e2b7a7be5a1b38bc198764bf30ca611651be3
11073 GMXUSDT Sep 28
bd89375ed290bfd8c9d7aabf6cbaad117ca096920479046bddc6b27eecb79d10
11074 ACUUSDT Sep 28
901570170a3f8ed7f255ce0bfe914daffbac968b1e348e23b1d19bba8f6dddaf
11075 BCHUSDT Sep 28
55d22867390ee34614f92dd0f673f5e2fa97c2a7fc3ded5fba765b1add16ef9f
11076 CCUSDT Sep 28
be14c441ba3d98033261d4e9dc523027d2c3ba65a5508bec4212ce339023a87c
11077 BILLUSDT Sep 28
3017e9d23aca6a86f28791c8755215727f4a82f51310f4953ecbad3250bd823a
11078 INXUSDT Sep 28
1eb5eb2ba46a65c969821ad6df658a60e4559f0625977d627d29de1123f5a578
11079 INXUSDT Sep 28
eed8be860f3a6a77bb44e1cba3dbfc8be481567622101a9d7f97717cdb269f0c
11080 PONSUSDT Sep 28
15ed8db417cff8b7ca64c774e435588f0cc46d375f5e47e8c77d63bb09f705a5
11081 BSVUSDT Sep 28
142a2f17d807a41a5f0daa4b28acb47efecf256833eb084ca58311457f3c4659
11082 BICOUSDT Sep 28
cee3934d03296c4e90fc1a5c0dc4650140a8f5742e7c9490d8866a278f9a8fea
11083 IRYSUSDT Sep 28
b0b5a2d65ca659250330e85028e3784c86f83108609a0ae38ce4e738bb8d0db5
11084 ACUUSDT Sep 28
a6598a71f80f2662f7b604e0ac7287d9bbd7258be7556046f25b4e06d45e1b11
11085 GENIUSUSDT Sep 28
ddd8bab48070b78eb9d318cc6c5148ab1891e9bb0b723c40c6817a162bd7bb15
11086 FLOWUSDT Sep 28
4efe20b405a96e13acf38a7ecbfa6a55b341c4cb017954cfa4cd46fc16dcd672
11087 POLUSDT Sep 28
f84a52b91a5b466a66f802f80a91fa3f82fb53c447eaae355ed28243433f1d4a
11088 POLUSDT Sep 28
836331b602470f45d0d68ed9ef649dc81f2cbb240e13861ffd9bbea11531c549
11089 XANUSDT Sep 28
09663ae05aa14b5337e3698e23a6089bd2547bf2d151ef62ef8e246cae1ccbd5
11090 PONSUSDT Sep 28
02182c39deb55979ef1284e4a4eb89428902bb3e722524ed7bbd6142b30b9989
11091 PONSUSDT Sep 28
d353f031391264ef19c2b2a8c33369d7723077abcb2851181854a5d5d58cd4b7
11092 XANUSDT Sep 28
4ccf89139d7cc014b97ee44c1358d2540ce23a563601cc14683e9a851b18fea0
11093 OPNUSDT Sep 28
9286173a09d9d4e253c96ed6e2777291dba1f42137ec6b4643e78f5a3e43e08e
11094 SIGNUSDT Sep 28
4fc8d7d9be035c12d9f7fcaca45242de17d4d71850f6b74f830ec8e06c6db3e1
11095 OPNUSDT Sep 28
5f4aa44190476fdb703a33acb64401137bca4d607f7e1dcc4789b60c1ce27648
11096 BCHUSDT Sep 28
e8d60d07269900fab0a3aa652841fca237f1465fe0921cad61bf00a34d549ab2
11097 COTIUSDT Sep 28
484d9e0101abae3190692679b4428a5240291190d012a909324076d4592c78eb
11098 FLOCKUSDT Sep 28
0bdcbc031d486cd3771f6de2ba50df23e962d84eef6b81448e3ab783087df082
11099 BCHUSDT Sep 28
9d44808d04cc7ea847e0b290de060c0e887003b4d44dd0e7b4905207109b62e9

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