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

6100 BTCUSDT Nov 17
806ce7a71da41489108dcc715cef577360849f8798690c57af2746c21c30815e
6101 SOLUSDT Nov 17
bdedfc66400f9d4f84ae3ac66b720b2ff6d01efa37f6c186d6ef751f1b8694fa
6102 SOLUSDT Nov 17
12d193a881d2fcd4e5e43e605acc78126ee4f46e4a0d3ff7299fe152068348b8
6103 BTCUSDT Nov 17
c2adf8e32bb706f1d7c62c952f3b053e5c9c0ef7d6d99a7b0ce0398761111f7e
6104 ETHUSDT Nov 17
0bd6cbdec44cb714d25a110fc4bd48105e4236c838bd8e36ed811789d5f5275d
6105 ETHUSDT Nov 16
cd8f165b2adc251c70c7d00bc6d4fd5d5311e2b604a5b8d1f7f20142cb4b26b1
6106 ETHUSDT Nov 16
4caa14eaf873e7e09013276616b1189715c652569461c7fb816f7cbfb0f777ca
6107 BTCUSDT Nov 15
569b8646f446a20920e1bcb76fdf912caaa64187e91f3e8a9d5c923891330c83
6108 SOLUSDT Nov 15
51561ba1eeb46187de0e1f37dc66f393290f6bcdf7ff7f05cdb2294503007540
6109 BTCUSDT Nov 15
eed21ca59e8bf3e31ddd5a099940eac3fa8b6a39d65a00404ce09a786baa6825
6110 ETHUSDT Nov 15
93606e4a589ac0e69efc775cd485d1e87910b2359c8f8011ff2c56aa888ac08f
6111 SOLUSDT Nov 13
d390ec4a8f46296a9afc28f1b49a8a84974a1255e6654a7fae717739f4658e6a
6112 PYTHUSDT Nov 13
ef967db25dca559455e1e638fd1f1265bccc5fac531803933d187d17e12851c4
6113 METISUSDT Nov 13
3e56b9ae65d599c24ee37e546ed766d623e225a2f821f7180b02449b5749360f
6114 SOLUSDT Nov 13
63169a0c809478d61e61c2f3ece012dd4d997aeb6217544d697c2358f1129a1a
6115 BTCUSDT Nov 13
3962a8fb9b3987b7ef2e1c846cf7672c3aac1d6befd1c60035e46e98292afaf5
6116 ETHUSDT Nov 13
6cd5e007d937d122633f761dba0e3fafaa08f718a8e7e456ceaff3556d42149c
6117 BANANAUSDT Nov 13
597bed5b422af0afe561f5ddb0d9b9d86f372716e2e36cf8bd415723185ae05d
6118 GRTUSDT Nov 13
03b8e59dde78344447b1a321f4b4261f4f2a995c3e6000804d116983a5598c99
6119 ETHUSDT Nov 13
57ff3365ddd279e0ee3bea27a84353ed6b149fbc6f411bdada8dfedb187e5d64
6120 FARTCOINUSDT Nov 12
a923f0c1f64686a4395d4ee603fa3b135701daa101d2b96cda486cff14625ae7
6121 BRETTUSDT Nov 12
513fc3c52e55889aeb3a68cb197cda87db6d27a12a9bd6d13d9d071dc564ed5d
6122 BTCUSDT Nov 12
8e44781ca7709bd62a32791809492c713bc49c4144721e84aebaa16429e25bd5
6123 BTCUSDT Nov 12
0f3002e2e965d38e14b2474d1caa8ea1d9607904cfec03088f3bcd9a3509234a
6124 ETHUSDT Nov 12
4ca840c085a96e37a6e871de8b2e5804d2c5ad485387f28cb491b26e103aa80e
6125 SOLUSDT Nov 12
e0281df03a319273c3411ee798c2e5c1d9c05686d0d222cfedb5d6710fc2b60d
6126 ETHUSDT Nov 11
8a039e23d8f02d65d4fdedf1f0420fd91c5c4f5600744d4a42d722f83b959ec9
6127 BTCUSDT Nov 11
cf6470d79637522f067e320ac6342c4865cf991d4ef1f5f3fff57465ce20df2d
6128 SHELLUSDT Nov 11
22d4eb8c7c16b0f491136d8967662495b9271cbb2d56efb20498c51e263879b5
6129 1000000MOGUSDT Nov 11
cc55ab94f166f091dac6728d5ba9e00012efd10abdbe97b216c437dc36bfca1e
6130 HIVEUSDT Nov 11
2378dc191b51425960cc9c8508a68ccae305d2e26db13a75401639b56e42c56f
6131 ARUSDT Nov 11
dd58f599997dc7a43b5ce05c6460015c663e3da344d2c4852d01963d2c94e80a
6132 ARUSDT Nov 11
f6c27f8ba8e8b470e8e15cff92e61b7780cf532b68684d75b3f24b37ca035e4a
6133 HOOKUSDT Nov 8
0c715456df0ff6bcb24799ef4d40a5470900bf8d574171907d2118257d78be44
6134 IOTXUSDT Nov 8
631c2d3349393c4731744d39c62f27ca0d7a04837012f234d45cb482c99b572f
6135 GRIFFAINUSDT Nov 7
177eb47d1046f0780572cda653eab8d26bd8d68b3955f7e7ee03ce75ead2880e
6136 GRASSUSDT Nov 7
33c1150afa4aaeaf07bf8fa2d2dd741880cc1db185de7c29889985b0753b22ca
6137 BANANAUSDT Nov 7
da0d4d8378e10b2d724e163a1f217d3330a804b2480b666467aa6c52b5829ee4
6138 ARKUSDT Nov 7
1c3c5a8bc154473a680471357085114955ca00c5be86f00ed9cca86de7c55290
6139 BTCUSDT Nov 7
393dcca9f6fb7106bd6a5a5027330050ce2ec85b494702f708de0f9a78eaf9ab
6140 ETHUSDT Nov 7
e90eb9a0e910ffe21307ba28c99fc5294f87abc90f987b8b512a9e78f8232697
6141 ETHUSDT Nov 7
595a4021c24b2317773bf7bee355d77b99dff7c53302ed4f26616d1f3e82f3a3
6142 BTCUSDT Nov 7
fba9b701b49baa54d7350176301ddf5b78ea96b65c5822c6c5571cd13c6f0ce0
6143 ETHUSDT Nov 6
86da986a37e49ed983175f10ce1f07ad3571a5b8ec93b8b16e2dbadfefce8fdb
6144 BTCUSDT Nov 6
e17e52bff8f4ea7102477bd9e7cb469445c03b872c64863132bfd544442311fc
6145 CAKEUSDT Nov 5
780fc8f329a9ad0ab59b65b42baeb79dc196ba524d3f530365038e584e9d9e0e
6146 LUMIAUSDT Nov 5
3b28d49648c96ebffc71dad0691aa4fbc1ace6aff75c9e0e92f9ecb3b9c634fa
6147 BTCUSDT Nov 4
8f965fdce69fd5bb96f7a2a525f7a83966c12351a46374eefb5f7effb9bfd5a5
6148 ETHUSDT Nov 4
e9e06b1de3e8aa95fcd6a9ee003aadef4de998ed003bd931c23a216676fff5b6
6149 BTCUSDT Nov 4
6394559d71cae229b5d374935eddf8a61d8940eb33098dc60c7d7ffefce77d91
6150 ETHUSDT Nov 4
ba6acfa192b2576732dbeede602b6482df64ab21122dced07b345c4d49bf1995
6151 ETHUSDT Nov 4
bab3a697617210d423beaf6f66dd8c9ff5419ba0ddd6253dec4088a1a1f7bcf3
6152 BTCUSDT Nov 4
8088c53adc50d1a9ce267fc4c5ee2e40ae24173438b4ebf7641add63c78c40ed
6153 TWTUSDT Nov 1
58a0d9b5391b4c72f0f9ad914d08333ec61564f319da88d16930d9dc320ebc21
6154 BTCUSDT Oct 30
74ded07e52979ac83d7e9f3ea8fe26e3103c47e7c14eb959e9fc164cc1317695
6155 ETHUSDT Oct 30
a21593512a9eecf58a858dcf936e6c5839b21df9eaf19061b10746fa207102d8
6156 IOTXUSDT Oct 30
eae87d845fbfbf95defd86065683536db9b8b60fa3ee65c6242b6879f402fc73
6157 QNTUSDT Oct 30
8b2105ae42f37932c3914bbe4e13e1f275c7ec344f64807e117a52191c50c1ff
6158 BTCUSDT Oct 30
79e5a240b2b2567f313ce88a9da958d9e192997dcd2537dd5ec873d16b2aae13
6159 ETHUSDT Oct 30
e1d7e185faac47b2404523065a4524dd12a3bc24d4c117dcb7ac1f43bcb9b0cf
6160 BTCUSDT Oct 29
ab2e0b3168c51ba0d2672fac6ca9a37c878b67beeeaa6d766588e0334d60fc95
6161 ETHUSDT Oct 29
329f5529c9c52d105e0e693bc1e4cb88a8366294aba2cc4881d74d3a67fd4382
6162 ETHUSDT Oct 29
8ef5b78e9317e21eb2394e2af90c1de8d1fbc4c38dada0602e55e658d31d3591
6163 BTCUSDT Oct 29
91680e864bde1d6a746aece16028352b0a7c4f9d2dd3e4d1d7a74c7fbdf65efc
6164 KASUSDT Oct 29
a6b1d79dcb850697747dc9ce4a9e31b068c45e2f0c38dd6ff8211d8d9e971ef9
6165 BTCUSDT Oct 29
fb32be8aeb0f803b56a921e2b747eaeea94dc8d3d4edcac926f0e54e81a5762b
6166 ETHUSDT Oct 29
3cf76dd0f5a039ec9a6f0caaf96d48ea0c547e7d5418e5a30047766284abf809
6167 ETHUSDT Oct 28
a4f72e15bd770bf780fe99aad2e62a61b2dc2c472516a1c8442bc5ed2e74156b
6168 BTCUSDT Oct 28
b65b788a7483049e9401f5343b068fb90964ee08b8e3fd0078c897d75cd558d3
6169 BTCUSDT Oct 28
93c55da25021ecb26eb2308bcb6bc843ef969e030cb228de7722d8ba3777c703
6170 ETHUSDT Oct 28
b6650a979735523c4b4fe6ad27a9b679465c5666760f36925b7236b3a021177b
6171 ETHUSDT Oct 28
982c8705f787f7b13e0711f46dfd4bafcf97f2d9c65f5d8bf6ab1562231fbdb2
6172 BTCUSDT Oct 28
7448a92bb4c37e6149a39f8b37d4ccd8bc09e5351ad91ca58b2d3f0410c0fbdc
6173 RVNUSDT Oct 27
6e199591f354797d9f80bac394a3f35e9982855cedbdba5e6237d608530d67b0
6174 PENGUUSDT Oct 27
1d00e5aa285a8a7b8fc4822a6ff36efb74cf5427384b5bfa45f3debecf38b0bd
6175 BNBUSDT Oct 27
4d2a8b6f8d495b46cccabd1414a0f3327a7a24f1df2ed2b826e4a882057e8433
6176 SOLUSDT Oct 27
a3cd8b01b5d01771e956b62b51274f1ec82c2a141761ceeb374acd4f6517b8ba
6177 BTCUSDT Oct 26
7c61417268b0ba53f1e152414344b0025267cef524bc77534ac20959acedfa45
6178 ETHUSDT Oct 26
6ad6a325f9ccd52b21d26dc15a7b7a11c4338143b6cff31a9a2d720eededcd47
6179 BTCUSDT Oct 26
77f743b9cc52aef804e09ff95b3b8bb97e046596ad74e0127b2561602ee6147e
6180 ETHUSDT Oct 26
f1568b2bc110be3d9ac7717b6b522ec3ba726b89128cf02c6f1bee883f8b18d5
6181 DEXEUSDT Oct 26
581cab41d2e87dad5f48475427a369cb8b50562533f4b99390bcdb95e99af06d
6182 AEVOUSDT Oct 26
6664a99e3f6b632b8ff4cc92064ca4ff68f6b751bf2da78152ab27814bf43276
6183 ETHUSDT Oct 26
abd8cc8dc0e470a40d5f1adbd8311f99bece57aee71eefcf7cff005a00ff128e
6184 TWTUSDT Oct 25
5cf8b50f93abc0c8fd1e5d8e3b243d7a4d479bf4671edc20bf1051bb8e6b4e53
6185 NOTUSDT Oct 25
47be7521e4dc455e43f59933497ca65c2c0aa7d6d39639260f85d88eea87fdd8
6186 JTOUSDT Oct 25
a92ce06159142a0478c15de7cb003e8ce7c7efbca3dafbcf083752301dc9b1b1
6187 BATUSDT Oct 25
733f205fd24f31241bf959fa71bf256e10dd92a8d4cf87eb13edb9a73b2b34c3
6188 XRPUSDT Oct 25
2db3165ddfe1c1cd26e5a37e10ccf633e471cacfa19b3447566054c191ff77ba
6189 SOLUSDT Oct 24
4bd391d465d89b2f82193c30e9f389d9ed36a7af16c1dbd514438ea1ef7f28ed
6190 JUPUSDT Oct 24
e10737a36ef6d59ef8321bb55762dd440767ab852cf31d05f7f4feb501b25455
6191 ALCHUSDT Oct 24
f03a557cd8f4f7f47096ae2f7da4fbfaeae31bc46acd5e705e99739748c9f447
6192 SOLUSDT Oct 24
7a267b35b9829934aa042f53d70b94cbbedd3bab042e330fde141de10ebc2f67
6193 BTCUSDT Oct 24
2f88f1b79e43dd852457a5870b96ac0790d852ccec3b9025439c4b0086298f38
6194 SNXUSDT Oct 23
036a1853f339b9c54e0aa8d1dac31dace98d5dad12e0bc819f41cd0c01496397
6195 ZENUSDT Oct 23
2672546f99513f9ad09db5fffc77a58a40d1963fc21d7f566bb4a3eed59fd3a5
6196 SNXUSDT Oct 23
e1bfdcd4cab506c096673fc9a908c9f9b4e8c102bfa6f2e03dfd01aec98eaf44
6197 DEGOUSDT Oct 23
1411fcfbb1c8f6d4a6cd93cda7208be49496bdcf5fb547909b34bfec66c0a862
6198 TWTUSDT Oct 23
1a9824e2a2bb8cd22971891554e46e5fa1686a2d9fcedc7264d6edaa97d0245e
6199 BTCUSDT Oct 23
5f9cb65c613f0937df9f50ca765c5a8df4a1953f33bc8a0b93f964ff710430f8

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