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

16100 RLCUSDT Mar 5
616ca4771828a209e8cf27235e8c454737349926f242010e48780972990b29c7
16101 ZECUSDT Mar 5
519fc862f19da93ce3ed7da1c0bd4f35e963822032e2fd29e952977ed292ad7e
16102 AIXBTUSDT Mar 5
15063a9e6d4d04919e5f1e64ae033f1f2f2b965b6fa71f4aadc01460da533785
16103 QTUMUSDT Mar 5
4eec17bdb0e09a2688cda3f11f28c21aabaf6900a6ec8249aab43fb3938fc03d
16104 NEOUSDT Mar 4
13697767e078a83aa5a10e5c0a4b8ede00e365a0cbe5ec2f2209db83996ea06f
16105 SSVUSDT Mar 4
66e3d5aa2e45a185e2f4210621154f35c3457c1c4a8eb878114e8cae09754f7f
16106 XRPUSDT Mar 4
2863a250c62c31ad5d3ce5c28b4936e470e801fda58460dff4ed051bfa481b4f
16107 SIRENUSDT Mar 4
185d28cda9ad6f8bdb1e133df6137711bcad4f3b1b449d42560cd793c78bca70
16108 IOSTUSDT Mar 4
396d4aeebe6e413b417658342239309f9c7a99b80cdaef74f60e0ccb785fe616
16109 RLCUSDT Mar 4
c717928e82769bcd5576313b0ab5636ca1728b944dcab65dd88b26d40da6acce
16110 BATUSDT Mar 3
60bcbd427e682ffeb2488947dd1885b54fae42c56aefda9d9deb954c4637fccd
16111 AIXBTUSDT Mar 3
9603e8722a89e45ed7d08b0fb440816aafba5e4ecbfe637d580c724144cc7e5a
16112 SAHARAUSDT Mar 3
5002acc192b3d767fe506c0fc92925c7eceaa918c6ca8f62266198f743771356
16113 XRPUSDT Mar 3
7a65c692ebf8e6de01a2492f63848d3d3377791e9ed975ef865ab1df2b4a653c
16114 SNXUSDT Mar 3
4e56ad9b77c745179591e2186c56fecef75f4d9941d2a628ef3fe018e73502d0
16115 BULLAUSDT Mar 2
606e8b179386a8e1dc50e4972b431ed7c088f0fd7d105c087d34bf2f11caa400
16116 KAVAUSDT Mar 2
4da336a3e47320adcc39d739cd1f7512efee4caaa46be37d0b375eeb26b1965c
16117 TRUTHUSDT Mar 2
13d2249c5b6a013a4526fc060c387e77d6982026c2d0d261e47dc5ab46a171ba
16118 KNCUSDT Mar 2
134f4169af342bf8bbb477260087622150e352267f6c78e1c8daa66369d63f4f
16119 DASHUSDT Mar 1
a5ca589903572991125b2ff827ef2341a3a527b9f5d410c90489736768de7859
16120 THETAUSDT Mar 1
b294362613ab2f1751ea2b213da09fddb1f6b0683cd57e933920e58b6c8cdce7
16121 VICUSDT Mar 1
1956f6fd42965c79ce95513e10512e8d0e52d0a8921ffb6a92dd475f0c6bd777
16122 SKYAIUSDT Mar 1
a1f296e1de6f41e4061c1280cb5641fa010752b34f25dc43a9647d652bbe7b52
16123 CRVUSDT Feb 28
f781ae6c91d7c098c4f86bae6937087d546331d4f6b10c402539e6855327a5c4
16124 BTCUSDT Feb 28
33b87c72e895f37d7370d1206c1f50f3901a6f1ad6f234d94c4e61f70295df0d
16125 COMPUSDT Feb 28
e9f7723c2fee108596b99bab41e430c846e45a1f1408ae373f7042040061b36d
16126 NEOUSDT Feb 28
4c5ad88005ca8bdde3de74a0d63948edbc9daf5fecebeba7673a47c8fe3c48e7
16127 BULLAUSDT Feb 28
6e548f08a675fb886c4eaa5f6dc83f81d79ecc2e5f09268732d635282f6074a0
16128 AKEUSDT Feb 28
d76d5701a5c6ae79ece7c2464ea773d2fbdde1ebec7c37fbcbfc8ecb9609b931
16129 IOTAUSDT Feb 27
1f6dce662a78c688e6eadfc4c3de280091d3b61010ef734855dc803203eaddeb
16130 ZECUSDT Feb 27
d5d5fba81e3f50a04ae76a2eef3272ff1047e81c3ae98fd1ce86c2ff0dd83337
16131 KASUSDT Feb 27
4430dea810bc930089192cd819be606c116b16ae711c9bb258ad85f4f9ed49b3
16132 GWEIUSDT Feb 26
a865ade2b925a0d66b9aa1c8f4cb36acf1fa4d98d8d189d4c0eb4c095efea870
16133 DENTUSDT Feb 26
74e66c30b6c545e1e53d046d2cb14f2ee6ffc6e0dc1e47fd7d7e1deb0bf43a38
16134 LTCUSDT Feb 26
d5d2fd3860838bbe6b8e72361b607f2d24ddb8bab060c398a8fcc1fcb1c31b3a
16135 BCHUSDT Feb 25
500a60ea333cbfe7f8849fdd789723b54cf5a149a385531aa1bccf47efbd8112
16136 AXSUSDT Feb 25
e022b5d87ebb40e89f94866f14dfb11c9d88ec2e7af40b286e458fb6b8fb4bdd
16137 THETAUSDT Feb 25
e50427dcd971eb3e7e4368f5d24a4b1a4f0646251a0bbebd5da7b09730b09943
16138 BATUSDT Feb 25
5ba4af91bcdac8a5ef2cdd4f8576aa2e3be7f0e8c519bbdf3c43e6ac640538d2
16139 AKEUSDT Feb 25
bb3b36b43cf7199b34639c83da67383888832d99d394f96868e3128c8e617dda
16140 AGLDUSDT Feb 24
67da74bdfa0c542cd9bdc2bd74b500cc7506ced85875acb117e4f2d468fa634f
16141 IOSTUSDT Feb 24
46d8d71ed7b95be5990e5d75a92f0d8e111ec538832b6b48bc6541a1d3103126
16142 BCHUSDT Feb 24
749188329334c8cb6b8a06f0dd7621326b5dbebf6c3b82dbea865abaae8006f3
16143 COMPUSDT Feb 24
08dcebe8a3a7bd82e285ba566d79c15a7918f91449fe67f48353b3a046b00cf7
16144 PROMPTUSDT Feb 24
6f59b56a6680ce2055c36b6ba735319afeb1c30df9be9fbf2ac31d984da7d524
16145 YFIUSDT Feb 24
a9275ed18baea09d72f1d73d04d998b0d6a7e4bad0b6bb08300bd3f42fe92572
16146 LAUSDT Feb 23
499f3ac545ea7237073ec9ae6f0f4a41cbc6fd143b3b361c630366dabf66b7e3
16147 ALGOUSDT Feb 23
bf82717deadba7ecd5eba9133ec52e9616ce1e9fe0eb5378349aaa8e9775dd09
16148 AGLDUSDT Feb 23
bfb46353d75a6f9a47b3ad1364aee950a4c6c6010a1e46694bc144dc291a9d1e
16149 BATUSDT Feb 23
968f5189929e4ca198f0f058655c84b853bf61ca6014a9cc1941364008b7c2ea
16150 DASHUSDT Feb 23
31064ff35de67a09b06b0c03e6656281e4bd23360175349345a3b3a3b7e8fa79
16151 IDOLUSDT Feb 23
168a3b0652ba43f42378b307c9f47ec3f8bf6fb46c20d5d2faed24862cef16c5
16152 ALGOUSDT Feb 22
d31445ff4e0934efbfc66907e7f8d0e651edcb0f6dc648326998ce5b91c7b922
16153 ESPUSDT Feb 22
dc9bd06629a13d343ac267bb043207b05e3a90d473a1a3f6ce61483b3f93852d
16154 XTZUSDT Feb 22
5241013e4199fb2bf713d1b361f93ad5aaa2cac0259f4ad4df4fa6305efa1ce1
16155 BCHUSDT Feb 22
bdb2c009f08c2dfcccd2bae9eb2e11d20158ec1d2f56ec5709eafc44781b2134
16156 COLLECTUSDT Feb 22
7284f4998a324526803bfa77a829d7b50f6fa1e15c41a494be06d9baec042548
16157 AZTECUSDT Feb 21
76da1af840b9f8b7d7c051ae78eaad7350914c1c0be9a6c96d2ee23819180a46
16158 RLCUSDT Feb 21
87c10aee631d7a6908507bd6ef4839c653852ea94088e5451d807031549c4fbe
16159 INJUSDT Feb 21
ac991181cba9755739315b0fdfc573e74ddf2611d518a8bbb2284357a6a44e3a
16160 VETUSDT Feb 21
52e8f9d9043be5540c46c5eadbe1a1e13fea73e6b2f64014007da2e656373037
16161 MYXUSDT Feb 21
23c9b63c8464c934fcf00c20965ea5aa86dd0382c2b99374f4e035dc2b06334d
16162 KNCUSDT Feb 21
03dc3811fac4b817013f4158c30550553c854325649c1877bcfdae70d13a1f91
16163 ZRXUSDT Feb 21
c00c71adb1868a39e4732710c413e4bd631e03314ebc47bb82604b65bf8edbc6
16164 PLAYUSDT Feb 20
efef5c6df86fb3068c9739918355a59ba0a8581dc4bd94fe60857aac93af0a83
16165 XRPUSDT Feb 20
9f517bf63effd511079d7e574ab0b199a711c8b06d67652834892abed5ed2237
16166 OPUSDT Feb 20
be3726b24b1b90be8065a95ea1e61d07bf958bf512c0307fc41dd493476e60a2
16167 DASHUSDT Feb 20
9bc0edb6ec172f9bbfd3917992295d6e87d12bab816908ac46cf880030a3b87a
16168 MYXUSDT Feb 20
cf08ca6d52b69c1fbc717a8c03cd515e405832ef2c08a6b27c014de9cb595c31
16169 TRXUSDT Feb 19
267d4951a9463d23a9fe2ba47fdd04471bd5a675556390fc3ce2a3ff98331375
16170 SPACEUSDT Feb 19
90fd5bbd31ec6fdb0441bcb52b0a204d89b786550821ae8ae7b3e228c800c079
16171 TRXUSDT Feb 19
6e28d0ba577162509ae02c17d73b32b95d79f71ecec51394d007d30134f01c35
16172 ADAUSDT Feb 19
09d8408b27fcd512f2b1561c9bc51a12b85cd34825bb53a6177f8f95912655b4
16173 WETUSDT Feb 19
56d62390d341d50bcc371be8cd72ee5c807dbba3557694c74a246672f098a818
16174 OGNUSDT Feb 18
970d2ccb3a29a92d459f7272542c2f9c33635638f27378f5d1d58896c4626d0b
16175 BANDUSDT Feb 18
e1906a1d78917ef02e9e04df561e80770746c59eb187a97d4ec8c6df3870c28a
16176 LINKUSDT Feb 18
edf1aea944b7c14e6cefec5e5ec0f6a79a1ba961cde585a8fed9f309124a6a92
16177 UMAUSDT Feb 18
d700b4cca6032bc41c44c6dcc87f4c25d4bd49dde2de1fe4fbc520c2cd598c11
16178 ZECUSDT Feb 18
e6b435593b39a2d0afd93425f7f90a781bc3cf01787a1a1f0586eea14449e736
16179 JELLYJELLYUSDT Feb 17
998444cf50435e0e9a0408e8de6bee14c96889213ecb785c7dee74e258e71bf2
16180 ETCUSDT Feb 17
ae7e5452ec9a5da23f2f8e77d50e1afb0b69c29d1b08f2f15c4d2cee3208d920
16181 ZRXUSDT Feb 17
88b980c152ae16fbe274650cc4d8d1605c140b5a495ad2a58b3dbd1897cdfd75
16182 TRXUSDT Feb 17
bd21b2b5f332c2e0899af4826412e0064365c0be0c28698acfd34b931fddfd11
16183 BULLAUSDT Feb 17
0e3068f4edcdfca39a97760aa19cd1b2744e466ac4bf22f599e68a220020a999
16184 PIPPINUSDT Feb 17
4a72a7475f8495fe0121b7de483800e1403e06af31fac465304389e1699e5a01
16185 BCHUSDT Feb 16
7623bd2ca46cab9eefd31a48350ae97f222cf49f1ba87739e27cbdb5e4247775
16186 INITUSDT Feb 16
5cb9379416f3b0abbd1295d2e76c1cc23245d92dfc0b2bdcfae5a753ee2ad521
16187 DOGEUSDT Feb 16
5267097f3d97b607dc2f43d388141e37ccf774b63d4f3063f02bcf63ddfeb840
16188 QTUMUSDT Feb 16
2702ac02d1212ae5e6730a2090ae0d3cc99eb762d9de9d952e08559f1e5ce229
16189 FHEUSDT Feb 16
2c246b2ab6a9cf8fa57043abe65084df2765768c450762a6914f344ca900aa30
16190 BATUSDT Feb 16
f3a8603ca9f6d538f5bc0f7e598c711fb4cd8e155e5c08c44555fffc23d016e1
16191 MOODENGUSDT Feb 16
a9f89dfa5a6c71b55a263676c938ffb7e4984bec61ef432d0d152ab0896d033d
16192 MERLUSDT Feb 15
060000e0870e677553db6d8ede3d7ec9736cf947501b85577c875afe604cb322
16193 QTUMUSDT Feb 15
290ea65e6acd3b8f5eb7e130d16d0aeca1bff648f00266e06cf1a5aa5c015176
16194 XTZUSDT Feb 15
da6c287ea766af9531af1e4753f576e714a9f1cf55e0a2b816f356e260574153
16195 SPACEUSDT Feb 15
8279e3a1b78f532515b9de3d0581c40bf0b64e4fe6bdd4d825382776456b9e06
16196 BASUSDT Feb 14
4f42f43a780bc7cba5bda9dae20eaa2ac5c26d57c054f163c66755ff4f3a8e37
16197 DOGEUSDT Feb 14
6b1cd5c1108d328575948c566b999d6db312bcb00a8fc04398f533289b94abd1
16198 YFIUSDT Feb 14
ecfedb5837e655511729fd677a728149581c4b42b57c746dd919ab30c98d2f45
16199 SPACEUSDT Feb 14
d4606a2f992353ee658d527ce3a39751d1062f6ee0469422d45b6da531d8f058

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