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 11, 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 58 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.

5700 CHZUSDT Oct 2
bf43ac81b293d7442ccf5b48975925c91c4b616a6870aec20843f1117611e733
5701 BTCUSDT Oct 2
08efe9238632c36be248de4bdd2672cc21309426b87c9a4bfdc193e82347f628
5702 BTCUSDT Oct 2
17313e6ee47c201c6edf65b8a7e93086ddcaf5ceaedaaaef35a5901f752842bc
5703 OPUSDT Oct 1
a328338baaf5460e7b88c02bb6cb0eb377db0a706f567c3c96cba43c5109b05b
5704 CHZUSDT Oct 1
6867d3e08e0bc39ab678ab8d1ac3edf32f44ddb657c22929553053131aaf1ae0
5705 APTUSDT Oct 1
245be4fc78a77a6ac41ba753f70cb816f143f736f3e94051c994fbb2e491d0f2
5706 STXUSDT Sep 30
c95aab8ea29d86cc6f258b4d88cf902c26bae30b2cae9d022ead22bdb46a5e87
5707 BANUSDT Sep 30
23d80acb384a788cd500adcb798d3bf834c7a6bea2626a9d56deaed1bb3970f3
5708 JTOUSDT Sep 30
9fd66d0e35d6ac68e65503d32987bc45357e18443b7135c967fd2f6c77fe2504
5709 JTOUSDT Sep 30
70b3a199d70c57a41a65bee5186668dd76ba1f9805a282fabed5e6329fa006d6
5710 INJUSDT Sep 29
7c2b13c08ada8d555fde26af1504ebb2c4786dee6e0ddf77f185acc8eb1f4b7a
5711 1000CATUSDT Sep 27
2869035963402dde370bb5de68ecc4fe30319b1fcf6eda715fe22c545041af27
5712 IOSTUSDT Sep 26
c8a14ded327e3ac58a917a2be8d5f5cf0d7f244263753858702e6046d9f6a8fe
5713 GRIFFAINUSDT Sep 26
a09328479c974fac6d26d3769f9ca103d0a04d298bb4b7ba2ce29f1c0d4e9bed
5714 APTUSDT Sep 25
d33b1e8e249c73dc87dc495e185de2a34406132d557e04e980fbe51ec35af375
5715 BCHUSDT Sep 25
36478f2a689fb6a9474a1e5d462d3dfa896e03f519a18e9a4878e84a638839e3
5716 ARUSDT Sep 24
4b65734f169befefabbd3f5aecc679ec50e5c592cd85d610aab56b83e81849d4
5717 SKLUSDT Sep 24
604d50753482dc0a7e4ed00e28c81f6beb29913731b927b619e9f139e3c0ed68
5718 BTCUSDT Sep 24
f7d52d125fbcac932af6e89e9268cf05c8f9be736facce0c5e119b800b7c5c6b
5719 RVNUSDT Sep 22
ded56d07e78b3364490612518e95baffa13bfce242f609fad8839ff18811709f
5720 BANANAUSDT Sep 22
152292a82e620d704940035c3096478014589bb45825ca9f153c20f3c695c8de
5721 AUCTIONUSDT Sep 21
b1a8dda8979b200e8c6dc2185843178cf8a9ae1475725fb011d7adc2e2001b85
5722 CGPTUSDT Sep 21
d403aefa0ecd52b8abb12af07ab162f827fab45e87c74b77cfb7b377681cb481
5723 ETHUSDT Sep 19
26fd640a17e756772fcad97a774b07114b5d8c910374d42c8dffff11188e26ef
5724 BANDUSDT Sep 19
f62a69478316b8765ed109f4bcf552f868b8c2ee5222424403fcb01a0eb1af01
5725 ALGOUSDT Sep 19
8675b2ca55b1de75e619c996ca18254491a16645f12d98939594e4a21918aac6
5726 PEOPLEUSDT Sep 18
ea0014cc98d6ad7d53e849cf644a8412095204575cbbfa47c1db0118111e121e
5727 SOLUSDT Sep 18
652b6790003c6ea3f9ecf7be8d811cb889244de9ba71927804aa692ab716b49d
5728 BEAMXUSDT Sep 17
3d2586b8e2ced19a96ad156f0baac5bf4d74a01d90a1a05e8662f3832ad4a206
5729 CAKEUSDT Sep 17
13b7cf6b322f9988257eccc22b8d0fc1565a43686e771b8bf24f8867dc041535
5730 DOTUSDT Sep 17
5e6a28b78a201ffb6c2c2e8f9afa62b1e255b3bd4ada74e231085f50e20c0262
5731 MOODENGUSDT Sep 16
6d6c5eb83c775f020b858a77209c06806dbd6aedc793b244dada3bfa07269a39
5732 FLOWUSDT Sep 16
db2c125e36f748af4e59da4bd2fdc66a8432ead25bdf0912bb6bfe82383757b4
5733 SAGAUSDT Sep 5
1fa47a8bf93618aa353b81128c04d365a4ac4b2a895aa1913b5f97c95f9d277c
5734 TRXUSDT Sep 5
a7a03935063667a8df6a57ab7eccef73bfe22b60756499d05ad5f8cba3b34ac5
5735 REZUSDT Sep 3
007c96b891f132660b373fbedcbb0b7d90e8a7ae247b61d077ba6e77aac20d28
5736 CYBERUSDT Sep 3
bcc432a1557761cf8cb5dd8954352e2b6f68d2cea4b43588f73281b1615aa86c
5737 C98USDT Sep 3
caf04a3273f326dcb6ced3ef3e60414c64e69412e6508630e4f102a34df91fc1
5738 SUSDT Sep 2
2f7d16b1fddc173bfe6f01d70aae71523b5c7ae7bb9ca444ea808cd005480b68
5739 WUSDT Sep 2
3d233a5271bece06915131ccc8cd24ae794e01b83360085524f8427f8e2e83a5
5740 BBUSDT Aug 31
7c5358e90823feb6f9e182c3a5ce4cc225df07d5feeff9c3c046da6d5fa48289
5741 MAGICUSDT Aug 29
7e4ab18177078db6f1bf40cd45fec67696f3626b98e02d0d2fb97e9d1412488c
5742 KSMUSDT Aug 29
adc731f3f9517d049e38d73b8c963c515d5f89f6a4f3a11024a7eacfe415073e
5743 AIXBTUSDT Aug 28
77592d21e199e6cd13d41dccf795c7d8343e4f634370329fb4f52bf224009fd0
5744 SANDUSDT Aug 28
fac0c86866486cbfbf1cd094ccb0e0f07092a565468fc651aac5317649b20228
5745 YFIUSDT Aug 28
b499111c8e1279d427140dec9961468ff619947b98cca0996a919315849e765c
5746 1000CATUSDT Aug 28
643a32a8c72e8ca8935cc5d7bc57b53ed55465108524bc9c855f2475eebb9fd9
5747 MANAUSDT Aug 27
605d4e1d3df6f692c8a564a2940099621bf6d36b113aa4634a73391618116ed2
5748 MORPHOUSDT Aug 25
1d04f6c6a8905fb73174f6737c53cf8dd01ac3fda7d2848e0255ed582202815b
5749 XVGUSDT Aug 25
6b86c530f022ed16f5d41330c1f3e09c13262f92d3a3417579a990ebf6596d4b
5750 APTUSDT Aug 25
55bf5c786596c4bdb2cb19ba03adf5a879c339c58fda0462b2976f1b8d758bba
5751 FILUSDT Aug 25
57ce0aae698d6381749717992d7ebabf35edb1db3060465239238e56a0750846
5752 FILUSDT Aug 25
496eba0fb9aff344ac5e69029bb4dd3142547f4ef550f0fb270cb6d7751278b7
5753 ARCUSDT Aug 25
4c24dcc45045f32cc5fab53b507717c009bbaeea2c6a1bb2e5572e7289a1197c
5754 GOATUSDT Aug 24
d55bfa8a8dc882a6c4d6ff6733206a87488d4084f5aaccec4b95fb6f754ba2be
5755 PORTALUSDT Aug 24
9900135da7e8faf7b7ab4193e1bf413be21b84553efdeaf943824d93d4a866a6
5756 KAITOUSDT Aug 21
cd7d629e0ec0745c00e860f73422ea7a07e19c390c11da6f048a84048b1691ef
5757 XMRUSDT Aug 21
660b81fbb1eb83a096a8c91ffd51d1756690d534fef36cdcd21cd04e21656550
5758 SUNUSDT Aug 21
287fb191de7e1c6df4bd43eed6d91b95b0c51a7729000401edcaec080d7f89ea
5759 RPLUSDT Aug 21
3d00dce42b2eab402364214d985b7131dca69c1be48066e7f99669f8d2a4281c
5760 KNCUSDT Aug 20
244fabb1bc3b6c60a40468a6e85cd81c93f962fe6d449e31e39da8447ee14c29
5761 BNBUSDT Aug 20
9b50a457baa4b6d5cb291117e82412fba91d4b46263438ef8e9ebed72c73f4e4
5762 BCHUSDT Aug 19
5cd14dca3e5f7218329ddc9ec92a5fc56ee585943abac3d9cd671c09a533d221
5763 BNBUSDT Aug 19
bf3cdb2b78175742397c5780174bc5fc603ba855ce5ec22ab07642041e2b2a8d
5764 ETHUSDT Aug 18
f748d1a5c8dc720ba4efd9621caae97ba0fea0e4372a37fedd7e2191357911e6
5765 LQTYUSDT Aug 17
025e68a2921a7efdb65dd08297b8a67b1b7a08c80d93fa4642be2ef4eec102b0
5766 AAVEUSDT Aug 17
069e26dd60c9185300d935f97be9fb3fc378fc9843e0d761279be8ef96978f41
5767 GALAUSDT Aug 17
795556b0bee7ac8beaf56b41bd6ac285157130206c8d28383becc64e492334a8
5768 BRETTUSDT Aug 16
76dbbcaa0810b5e826d6b3a46a2812dacee0c680c7f12ab2d1f69274aa33fdad
5769 EIGENUSDT Aug 16
86f20ffcd6c619f97eea3e1bac47faa5c034781c91d50e3f3676e57b9c5f7487
5770 NOTUSDT Aug 15
cb195c0ec0b12b6214a3705a83dd88140b8e064ac854fedee9d027539d21981c
5771 GTCUSDT Aug 13
56db3b7322b083b3481c29c772f101291fdf29b38fa44a97ee3eebb90a96fb60
5772 TRXUSDT Aug 12
57eec25e987167a5264c58d0c3e586441cb69887bfb1a12053fccbd50b2e4329
5773 DOGEUSDT Aug 12
b3de78b4f6d8d3a50a889485e1f0e8c1bca76894e1b37a13d498e71088c383e9
5774 BELUSDT Aug 11
1dc90fd05f2c3768c7bffeaf04eeacee9d4f4f7d7fb2a99dda002e0e77c1c036
5775 LDOUSDT Aug 10
51c8cf150094e39bcf79ae032243197a8a23f370aa6863248cb3ed5fa74c6047
5776 ALCHUSDT Aug 10
83302eca9a7da8612306e16434ffb47d66a28abd78777dbd14a4c95b35f67e9b
5777 THETAUSDT Aug 9
aae05dfa6f9381a8de08cbf9aaf2b19945cc5e7a209c08c0245dd23a1f46f7d3
5778 SANTOSUSDT Aug 9
76f7f0aad4c5c4b679cd145fa9ab274166a9266b41cf581395c816d0b61b80c5
5779 LINKUSDT Aug 8
cf79f247e1b0b4d3772df3ae47ef6d904310e4b5ccebbb0551186935cf849caf
5780 DASHUSDT Aug 8
b9e53be4ead70ba342b07eeafb376c8b2b0e0b957c5b36aa8eace6f35121fb3d
5781 1000CATUSDT Aug 6
95d78666848c6bc862b76ee0758fd2d26dfb33564d3045c086c7d43d088411c5
5782 PENGUUSDT Aug 6
d58c59afcfd70e9defacf0c07bf629bbd7e8fcef5763280b155584ef35535fd4
5783 NEIROUSDT Aug 5
2237c179e4e09f7eaa1800a26b80175e14eb4974ac873c70122422845a31d87f
5784 BTCUSDT Aug 5
5ef4243a643e2728fb3463195c4d60b99a7b12d29d88bc53bd9a7183e4519059
5785 DOGSUSDT Aug 3
ae3d2039c37f25e3333a10a260fcb678147eec9f520de6b1029e20c26faad7df
5786 SOLUSDT Aug 3
bab7037f3d852db4cf51cccf913813250db8a3e32f7b82a803e9b2fd2f2582f1
5787 EPICUSDT Aug 2
dc8243efe7a35f3c4510a67f3d9e103230bef06fc091776e0600175142922464
5788 VVVUSDT Aug 2
572fc92c2c3c9611a954b47b15807653f3fd835e42fe058e38cc3d98902d3743
5789 MORPHOUSDT Aug 1
0595fe446309de5e4f9d2f4aac25847e043820a6338129cfe7590cd02d978f4b
5790 CHZUSDT Jul 31
62cbc067bbbf0a75c0d3875590221d63c53861b74fb9ffefcc4445e468186a3b
5791 DOTUSDT Jul 31
5cf4f606e520136d3c173a6703bcaed284f13ff6ac64e25df5342b79fe10f579
5792 ROSEUSDT Jul 31
1386686e6bf28bca73a39474fb05ee081353782b576d2e76625b5658b1bc3015
5793 JUPUSDT Jul 29
6fdb2f8e229dd5795a3d134e65db0a3c2e989721f0bdecea339837e83837ae5c
5794 AVAXUSDT Jul 25
15f530fa580c24904112f852c14f653c31923d26e4f5523c026cf9c4b661b1d5
5795 LQTYUSDT Jul 25
92daef982718094f9efffff5143ebbf84ffed3efbd2c66944f0d6f8182e3e715
5796 ALTUSDT Jul 24
b0ea71e12cc448e7ea37d8a27af8f0031a76d851d1c0c1fbe6c1c5a88fd3183e
5797 ACHUSDT Jul 24
053dc956eb95b743655b6a3877a6b3e790f9afb4dd6bba32d61de8895530a9bc
5798 ZENUSDT Jul 24
979bb3c2dc708449c043854549ea23fcba6d09fad159ebc6d308dd20a24c391d
5799 SNXUSDT Jul 24
8140deb627f7e2007e3fa6a0176de25c209d6e153a5e812b615d2d9f31b1c673

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