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

10400 LUMIAUSDT Oct 2
c1d6b9684df58151d595fad8ac6dd73e7744368ca432c7f8867eada8f08aaa4f
10401 SFPUSDT Oct 2
d7a331876e4dd5b3d9f4ceb1b79b37d3409d60fbdba2c3b89ffe822da2a2b5be
10402 RAYSOLUSDT Oct 2
55e8ebce2ef98afca2d729ae7de42a2783c14bc567178e749205ca47c518030c
10403 WCTUSDT Oct 2
af7ca0e8c465efd98db42bc8a3a19bf41464f4615fdd67ddfd94fe6ba03f39e0
10404 BERAUSDT Oct 2
7a18ceffdb981a5e007a44ff8e9fa555fcdf193418ffdcf70d7ebeff60395db4
10405 XAIUSDT Oct 2
f86e312f65af702c7e94b08a65f39a5eba4ee89148bbb9a1ac173aa4a4f62d91
10406 SLXUSDT Oct 2
57832cf3964d0dce56f40442db3ed555b086ece2d5362d852a2b3ec1525efdad
10407 AIGENSYNUSDT Oct 2
36de23dfe74effdf37340d6b98554d17a6098744f2114807188dc357db8618c8
10408 CHIPUSDT Oct 2
1790516b8bc2743787538002c272345e15d79e6a425a462fee5481c13b4f53eb
10409 CHIPUSDT Oct 2
849207bd7e3c6803545e6e416fc60c944ffe7d461a5120d800180787fca7e7ac
10410 GENIUSUSDT Oct 2
2f9b8f8b101170a30920c0283e527d50e8f5c1b3a16b0f32790f2eca44323431
10411 PRLUSDT Oct 2
ec09b66341a124e989a00f3ede635a2a38338e4145229f87f0fda4d53a97cb36
10412 BSBUSDT Oct 2
5c22838bf0df54c02b162a7492ce52c101e12e3bc0d1cb61e487428bc4217f32
10413 CFGUSDT Oct 2
d09eff91f081208c66abb9cd8fb1617dd90ca70fbfaea7f95f14b2091f021500
10414 MANTRAUSDT Oct 2
4460c56bff0746f1a62308fcc0184efb42973c95e4d74bc019d493aaaedab749
10415 KATUSDT Oct 2
4cc327a171f686e36b99c4afff375fce230e3f890ac5b786d2e4c21c8fbd8631
10416 OPNUSDT Oct 2
61e671140c22e685b44ebab28510c34cf19cd61e9d22bba03913850586dcdf48
10417 BIRBUSDT Oct 2
62f5edfe83a090d7a5057d71ddfe2440940f8824bd1a8362a838938371911040
10418 SPACEUSDT Oct 2
5a1584fe7c44fb15ebc0f6dad0e7c7fd9bb43da749c7c3e971f68bcfbcab6829
10419 ELSAUSDT Oct 2
75b1d37d4ac2b54ab708759601fa1921c4fbab893b15c62ddb4568da4e297afc
10420 BREVUSDT Oct 2
c6d2fc553dec9b677de2fb14c250d083da923348aeaecfc05a936baae1fd3d9c
10421 ZKPUSDT Oct 2
29ca89a014810116421c75f35bc13243410942dddd1474519b96525db0fa96c9
10422 RAVEUSDT Oct 2
f44312234dfd96e83afb482877e06d3554e21482df79eeedffbafb54dd554ae9
10423 WETUSDT Oct 2
8ba09d0817d47bb6fd93716cba2cdcc4db42c2fcf0ab2a49929c814f49fd6700
10424 SENTUSDT Oct 2
9d8108dfde917d6249d0dfce8c0e65b8edc75a2cf60e41f1272ba608b63f859a
10425 CLANKERUSDT Oct 2
55cf4a28a6bf1626b627a2b37a3c15275b19082728d75aefa3acd5d716bcea5d
10426 ZBTUSDT Oct 2
f501b6a9409eb290bc893643049c223fb2be92372f6fd725e525b69d250cb0bf
10427 EULUSDT Oct 2
a2c4319474f20a2681ea4acb5f887f87413ff566b8634e8131222b8245455d0f
10428 EULUSDT Oct 2
a82671aba528dde75f4a0d4ec365fd3c855dd877ba1e0079e7feb6c12fb2bfc0
10429 EDENUSDT Oct 2
94aa8f8135d507179c8a07d67f24366f8831ec37c8d434d4f891f44ad0c4073e
10430 XANUSDT Oct 2
2f917d872a9c300220bde461d5926ac4256a8a0dff081a7156246b036755899d
10431 MIRAUSDT Oct 2
81c1b4919210ffb2e74127adc3d2c023fc08d6843dee3997a2acbac83b1107bf
10432 MIRAUSDT Oct 2
c9edbedd679d5c7272bdc09847dcc3a7e523edc16e6b97ce418838ceee9df9c3
10433 FLUIDUSDT Oct 2
a2c871de062be4930ce621b5d48e785480741d2edee6334c7a8ac2d3cb9ce716
10434 BLESSUSDT Oct 2
061501a7403c9cbf5b84b30e4a49284e801b44ee7d9e51803c478462d5ce3dc9
10435 ASTERUSDT Oct 2
edb0d229b83cdcc75f4e88efbdb687d5e57bf108ce18ade388126b5422f4aa9d
10436 BARDUSDT Oct 2
58a8e8e6b1a192a38ae592e4c8859f29d25a74c000b382ff16a1426af066fb3f
10437 STBLUSDT Oct 2
c0c97746eec4ece659a51626b880b05228fcaceccb11fdf91f6134cb3b53a398
10438 TOSHIUSDT Oct 2
dd020ca99548cad2a9e7a4f076e636c5adbc01a53a08ca56f7e50ec0466e4cfb
10439 ZKCUSDT Oct 2
7e57b6849664892ad9e7a7a4d15c0e828be0697344fed91d03f6afddcca8946c
10440 HOLOUSDT Oct 2
84b8babf8a8d01e9d5c40b379816b18973d1c30d5208dc0d2b3a54a4dec57f16
10441 AVNTUSDT Oct 2
e2fb65632f2c86657bbce5884f07546861b0a43cd058c19d145cfebab83a62f0
10442 PTBUSDT Oct 2
bbda6e6d5be453b9adf8f3ddf26aa3be69de33d3d7d1dc8385ccc2092e16f80f
10443 LINEAUSDT Oct 2
74fb8faec731c51013eb34490d62239e5ccba65f5c1c62ef569361d775fea99b
10444 HEMIUSDT Oct 2
81731653a28ac4cb5f3dab52bf4c46686050bde605bdc28c7298b16205db9a39
10445 SOMIUSDT Oct 2
1aec01fe7a0868d6aad92414237ab4496e8d87fea9de1c59f4823b6437299766
10446 XPLUSDT Oct 2
69cbf0cc17cf97e83a372e04678d251f96514ac8e15f3d96ace2d1865f1f05e5
10447 XPLUSDT Oct 2
c0082dbfa2db6cac618feca79b5663b90fafbbae474e0dd7ad3999d30e773bf3
10448 SAPIENUSDT Oct 2
20a978dc4962a61cab5a3a16185ed8439c26266d380b06a51bce6aef73ee8d60
10449 CARVUSDT Oct 2
6bf28b5b216f85d80431d345c4f2aeda4670d128590e7e3ad63b8f74f97b613a
10450 INUSDT Oct 2
7377890914e467607ccd603abeba5a5eb75eb21b7b69989d4eed8e89f6a567f2
10451 ALLUSDT Oct 2
16fc3965a86d76af9a754f2bd11727fc031b93c79788d8b4333b8940a419b652
10452 TOWNSUSDT Oct 2
7eae5c36254c540ee3b21be344df47ba7dbc8c49ebeabf051a6ac8de83ca1ed6
10453 TREEUSDT Oct 2
a0514c43110739f5af6edc5c6b74a6a3a976d3116ac46b50b94319ecc89d97dc
10454 ZORAUSDT Oct 2
18aeaa430752ba520ce7b3b2c7efec3f68e90100ccf50ad896005113b8609c2e
10455 CVXUSDT Oct 2
785281c4b5dab60c2d80852c6a9cd6a08da784f326ef7a23579bda7935fe4871
10456 ERAUSDT Oct 2
13d5b1e3e7a7763fb4182261e4eb6aa38cc849e052159c3721d8f3d5a4202b1c
10457 NEWTUSDT Oct 2
c725e3b816e5f73ff6bf6c1d12655919913e5ee318030357d1400e8e0b5f1ea7
10458 FUSDT Oct 2
9f5db472fec4ad26d198b31a4e854c5647654cb066dc858e1dfecd261fcc6a78
10459 MYXUSDT Oct 2
d342af6ba4581cb343e5699d945762af6ee9954f90731cc7b3cac48fd590afe5
10460 TAIKOUSDT Oct 2
93f99af17fd0bc0d169f14c7c21293f961d32898ff660746b6c66161676ee43f
10461 HOMEUSDT Oct 2
0981b245c9368aa5a2db0394abe6c9473334769125977cc9873425cd46c45bfc
10462 LAUSDT Oct 2
f5c1fee7c7cd941112dd7e3a842bf2fa56f2cfc77d90b4dcfdfe1c1c406d8a04
10463 MERLUSDT Oct 2
eca8a8b63968f59c99a2069348513aea008d5c6f18960fbba99146dafc380fd1
10464 CVCUSDT Oct 2
e4d5d0febd25ec21c6aa7013336135f7fa320cb9c6002dd2848be8118b039d1d
10465 NXPCUSDT Oct 2
ea1dcbd92e9b38957280b85167030524402b8dc72deb07e9d5268bf6a9126166
10466 DOODUSDT Oct 2
224c803e9e161dc0be3f238aea7fa019bbf0f4500929cb2aebe12ba67e0523f5
10467 ALPINEUSDT Oct 2
0f13219bced6b44f8d67a399761413afe62671aba63682d5c2cd8ef3637d5333
10468 SXTUSDT Oct 2
e75361c783298dce20c805a28d1c7cada1eb7648212d2d6615f8335d0841bc05
10469 HAEDALUSDT Oct 2
2ce1b6f3428f09f8491285f60c8c4a965df01e6c067b60538f65ddf7733ba9af
10470 DOLOUSDT Oct 2
b436885d7ea67d42331a54098500f98652cddc60a7e479051635220f948fd5d4
10471 CTKUSDT Oct 2
c163a0a75f24883efd8630966c2a109c17953cb56d352d985ddfce4fde45e8fc
10472 PUNDIXUSDT Oct 2
67e386c3b6a9d237d21c87493dd3fa891d62bc2b4add0d9d39935a42c72f8a06
10473 HYPERUSDT Oct 2
a7363d4ed38ab8f9020b073a2cb9bb3c9bddbcdc702aa63ce72d18111956af24
10474 WCTUSDT Oct 2
d923882c317716326cd20c885a024c36316e5d021845eff1a3ae648989e951d5
10475 KERNELUSDT Oct 2
8ab879646cc38d1a29702b1e86a79a8a5caafa441f4da5fcc5aaf02cee7dc358
10476 STOUSDT Oct 2
dd7f2216fc7b147977c420c4c9c621846afdbe34a47fcdc75c48b6ccd30f52c9
10477 WALUSDT Oct 2
9b8eb58335514d5de53ed2fd7f0bf1aef100602bab7c95b8bc43a321c5d57aa2
10478 BANANAS31USDT Oct 2
1e15d690c628bfa54662f591542546860fffcb3127286d8d46f94ce4b22bb84c
10479 BROCCOLI714USDT Oct 2
b5b84b361720654cea026860914eb1477e66cb8879ffa2926ff7a05795a392d0
10480 LAYERUSDT Oct 2
b9fe357004bef7533c6a92a55f62bb1a0530c4cd90b096d066d8402f5cdfa837
10481 BERAUSDT Oct 2
8031ce0073f5534c7f9ff62747a2885c30b6442d93f91b359fadeab088a2b8f5
10482 PIPPINUSDT Oct 2
855adb666eb9b09c3d2a7d4a7bfe92c9669631b473185acbcc7e2321f2082cee
10483 MELANIAUSDT Oct 2
3e7c2427912465192a79af2166809053d835f4388fb6b3e2bec070121c8a5462
10484 TRUMPUSDT Oct 2
7f988b9bb6d4de2794637d3ab8f59c6e9bb4e6cc7d97ff49b4701d0bef002c93
10485 SUSDT Oct 2
ba1cba12434ecd1a7363337c9c8413ce5a93ea417c534ae5765260870779db97
10486 SUSDT Oct 2
16ed56b1731da370d6b50e012fb169fff9852f291de0df267f7718ef209e407c
10487 SWARMSUSDT Oct 2
d306641f26151badb503df89dd217c48e2954245cc223e7bed4874bbadf4fdd3
10488 COOKIEUSDT Oct 2
896017d9c993130c4938852275c502570211ea4ecbfa8d9229a7a421b97db7e5
10489 ZEREBROUSDT Oct 2
28eb7dad18393ceb95a275fe292024fc6a14ce3111f7510d09acac2e5e96e222
10490 HIVEUSDT Oct 2
70379e1fa4d17547b52742dc69945b052d8e449a670779ba05cc79ac597c2e6e
10491 CGPTUSDT Oct 2
19107e765086d53f0017909d1059b36cb85d00ab6eedf779338d47e10441c8a4
10492 USUALUSDT Oct 2
a1c8583c509f1c43840ad7690a9fa007102859e741c9b05c36e2cf29c4ce54cd
10493 LUMIAUSDT Oct 2
f8547ac426628a4abbb86fa29ef7046f43422415ecbd837186438cb1fd9ed320
10494 VANAUSDT Oct 2
92539a0442b184ca5cef378773f277783dd29b0237735fd3aabf6ecdd6cee3c6
10495 MOCAUSDT Oct 2
df9a593ff43200071cd6ba7163838fa27eca5a459f80f63ee0fddd29227f7c4d
10496 MEUSDT Oct 2
c339025a4f734a9167e8ba163bde48fd1cf20bd88ef7fb13e0ad7c13b6ef14be
10497 RAYSOLUSDT Oct 2
01b4c854ec6c90438a7df736b31da57fabae5e84533a756a50a1767ded6fb978
10498 ORCAUSDT Oct 2
b5de01f292d4cf7692330984a92206b99bb9647b181fd9bd965dd50ae98c2ca1
10499 KAIAUSDT Oct 2
6d26ea2811d3485f48d2701cfab72fd14da1a5acbb22a3aa6c0a56663c7c7137

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