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

9000 JUPUSDT Jul 4
f53b870d07abcd4594b49fb852542dc1bcd6c3c035ddc8dfb5f5ee9c5c1604c3
9001 RIVERUSDT Jul 4
c87cb6ab6c1b7a04b24f11ec63d2efe9876d2cb5af0b9283e45c0b5c2bf05943
9002 MANAUSDT Jul 4
8c0977cf45d21b4de33be33e82050434b24e18f63ac1eedcad898aad9ec45659
9003 ORDIUSDT Jul 2
4e6167ed67f2ac8e94ffced4593cd3cf89b757315b8b8fa6dbad82c3803cf034
9004 MUSDT Jul 2
27c95391797f3c3f54a9de292c095d3e88f6a4ccb16548bff991ef95c474ee13
9005 BASEDUSDT Jul 2
5a8a5281387ef234f09865168709693b7e869bd0ede8d38e99c3e1396f202454
9006 OUSDT Jul 2
6c87b85936008dbeaf90c06f2b8d7b8a486bfbd2ac9483ff14b158c40c0964fe
9007 JTOUSDT Jul 2
671dc6eedc9013894a12eaf2408e8f6835ede2b2dec0a8ecb3d0af0f348d1d5b
9008 TRXUSDT Jul 2
a2076b4c3b2236391e565966093cad39cc2e7cebc7f68335d0b4acd47b3c2383
9009 ICPUSDT Jul 2
2b2b43f5a3033d56661ae361e9304019159b640252f97a9411607bb2837bf88a
9010 ASTERUSDT Jul 2
6301f842ea157123e6e031ab59d1c82ad5a66703e9c6276f6eb5d087676d0630
9011 ARXUSDT Jul 2
c8d438ebf6608a978320f7f8001a28a82e982feef4f8582c97de22d892194820
9012 TIAUSDT Jul 2
c0f64877e1e7bb5e5c3eb0852d7d3b1d0fd9ce24c28492d617f6ffe6b02a9066
9013 COAIUSDT Jun 29
17cdfb2c1ca88a5ccb6481d882fc6c3eddf254fccf75c8e77eb7d903b166e721
9014 ACTUSDT Jun 29
b65b13c8ece560530f0ce977f262a37d28aef24c17b884a74aabbbc6210593a6
9015 MAGICUSDT Jun 29
4110bcd5aba1a96a424abf0671d3d3161e04ba2e67accb6da95d7a70e042164a
9016 APTUSDT Jun 29
1553ea58046df81f845aeb411062ef840d10df36494b3daf81ce0ced49854770
9017 GUAUSDT Jun 29
1c444f434ca2ebdb8f5caca6fcc5ea1a3e115b936887bdfdcbf2d0da72355e29
9018 OPUSDT Jun 29
5ae61b05ceabf8d6aa10e09ff815f4d9ed6dbfef02fa2014887cedbe43ae6854
9019 INUSDT Jun 29
50b4918b467ed3ba784c87d005d7b321802139d8b742f4bce4373a96cb6ec73b
9020 KITEUSDT Jun 29
13c535f9c2e489f7e5add16e993e3e2072de42892e0550ab2f2ef458c4613c1a
9021 GRASSUSDT Jun 29
f0ff0ba1501f0fbd9324abd24436ff161274026e57dfa549d05aeb505f2d6fa3
9022 SLXUSDT Jun 29
881220112afaaf1f4da03ab0a72e4ac7d03d5281df6a4d198286355b423efb40
9023 BTWUSDT Jun 29
012a268b3058011c487967bec95be85b0a87c435a0f3acd94afc169c5ea55dbc
9024 GASUSDT Jun 29
f56970f129019127d44a2261fff3c04099b57fef0b048858a1f44843fe4eeb3d
9025 ORDIUSDT Jun 29
130cb2db8a8e36e0d0603eea09879e52c23b75083e6fc0fc38d92fceb9b9b2b0
9026 ALGOUSDT Jun 29
484bf7ab664a7821895a98906016c5a9605a9b6f1df14c4959965905522f5c80
9027 PNUTUSDT Jun 29
6dc6700e7576c2d03325107ecdd42251172640835e9ec4ecdfe5d5f9ff9f6eb0
9028 HOMEUSDT Jun 29
342220fd7834327aedaf3321670c0a17d7f37b022ed91786be1198248c642f05
9029 WALUSDT Jun 29
4565615e0e7c1ee8ad5e1cdfab7beac0210c9c8d65d3de35cafc646b65eaa0f4
9030 BABYUSDT Jun 28
29df4beb44aec27f2b26c86870d00d067836d5cad80dfb9e0d3bbbef251214bd
9031 DOGEUSDT Jun 28
39f45cd46331b1d6d79b5991edb1f2af0fcb4c958726cb5c8cbcc0d4832873f4
9032 JTOUSDT Jun 28
1e6ea42e7a04de0947dfe2be480485bca4b4b65049dd43f6e6d2b9dc88f180cb
9033 ARXUSDT Jun 28
237d59c4a75c495128dd37302ba0e4db3a65e5a6d90b94fa8875913cb8c6500a
9034 OPNUSDT Jun 28
13d7268981f777ca900ae5034e25fa19419391b09f88db3f82f812a062702c16
9035 METUSDT Jun 28
cb348340401c1d76ee4f1b88275621578075cab8d84f23545eff9028b17e3647
9036 APEUSDT Jun 28
0cc73f45890e1df52ef326a77b6327cf362f093298c3a5284e351e87d2fd879b
9037 EDGEUSDT Jun 28
d7732b837467f8005356527f3c4ac7485f592a3f733c87a8c1a4c59c9436bab8
9038 BRUSDT Jun 28
7c7cdb7ab47e1b67c35665f54669b8a721cc48bec7f33f96ca10ee1ace02e098
9039 CRVUSDT Jun 28
08da7aef86fe7dfb96d33a8c60bfb00dff4643c706e8a9a219707c2e34a45c54
9040 MOVEUSDT Jun 28
0bdc1c881ac77d996cd573d0c42c48fc337be6e199ea14c129092d4c9ac7bd9c
9041 AGLDUSDT Jun 27
0647a52038ee2c8bc1920380787f2535c92ef68598de6915196f1a28ebc826b6
9042 TIAUSDT Jun 27
cce788e4b0e1e9907c14c7ef0cbc46a7a692469a9a0ab6440dc90ac097f7706d
9043 INUSDT Jun 27
1b78b87a1c4111d5d198ec58f8226bec6a69061dfb3e4257d50a64f59f51869a
9044 CHIPUSDT Jun 27
9f3bc57ba5d684a1c40716f0161ceb3c181428834533bb8ed7c2a4757594c806
9045 AGTUSDT Jun 27
2fd18b0592421bfee6c31d600135ae9155ec25a1d0c1cd0ac2d5b56ab53e8aef
9046 AWEUSDT Jun 27
80f759713a559fedcf8751b56c74fe051758ecb3f24ed6d82d763bb82be8718b
9047 XRPUSDT Jun 27
8a469097448aced8ac86fb116a5d326f2b561ad0c996dfaac95f167be2c87c23
9048 LABUSDT Jun 27
e206a53953b00434f5d0c73d809840562d5eb513af917408601ede8cd458fae1
9049 DOGEUSDT Jun 27
b5406a7ee3c04cddc3e33ba8fb866210a4c94c5a0d92b66d4edcc798146724ba
9050 REUSDT Jun 27
7f54c5a32e9310cff531b41aab9f2a1f4d10b8451de36933bae6f61f6436ff3e
9051 JTOUSDT Jun 27
07ad8091407c30ee594266ae1fbb22b699e6207cc0713c05659af6424d8eb76c
9052 ENAUSDT Jun 27
4cfcedf154eb7ab51d9487574549afe2a6dc07dc7c6215cd7acc3d2b90ebf436
9053 MYXUSDT Jun 27
5b96fcffe495821524a60e9fee6d381fd318e3a319c1135182e548997ef8a0f6
9054 BTWUSDT Jun 27
38bd426a7bcbe6387fb69fe7bb54085e5899e72bf23d6f40220e42abf1214d19
9055 FETUSDT Jun 27
deb2cca4182c83e1f1f8de8955f419d47a3bc1a03ae1eb0b3b7e48ba6cec5926
9056 WUSDT Jun 27
7ae0d3bbc6dd4638b4fd2edd88019cd2eb59d8b75e109ea45461adb988abf136
9057 KAITOUSDT Jun 27
dba7c82145cebf106d61dda929eaf63d7b4935480503ab71ed950fd57efbe13c
9058 APTUSDT Jun 27
409355ff4d3a2ca73ce083f55d2b01dd1b8ea656714b737785535ff93e7994a2
9059 IDOLUSDT Jun 26
38c998dffa8f47d8b3279af03a0087899096d1cba12200898af3f77bc10e559a
9060 HUSDT Jun 26
88a842819e25817e24935aa621c3c1779d1745bafc85962c18e92ac29ce98fd6
9061 ICNTUSDT Jun 26
3a79b092c06853259bbc83c7699dbd103b2a0e1ccc71cccca2f9ac066cd61bbd
9062 OPUSDT Jun 26
77c4053eb3b7ab4b5809092dbef9e8d2476ff457c2694956e43310b260fb919d
9063 APEUSDT Jun 26
a00bce476b5e63e394e169d099085db016c3be8b5c400613af8ff94df4a23a78
9064 PORTALUSDT Jun 26
9ff08ed735d56b9421df7cd3e20be54b4af20ba980e99ff34ce7be23c8239f34
9065 MUSDT Jun 25
24fb541d2b94a3f794c4a7f9f93ca4fa2d441c1ca1c8c9d13e5731b6b61dc622
9066 ONDOUSDT Jun 25
1af02c6900dc7c59e890dc2fb35c0725ac07c3ea9cc05d72a9d1338bd1393d8b
9067 VVVUSDT Jun 25
4ee85b35929f801cbdf87a167f9e974b93aeb3093ffe5e1d6c5a5cbb116a5739
9068 RAVEUSDT Jun 25
8bd82499e1fee7282f85bd42977b4de28816e36d7b5402f8b9e0c511d7440128
9069 LUMIAUSDT Jun 25
d04ef94a6a8c061d13ebb5655e99dd3f299bf2fceceb093c7fa87b4f38f076a1
9070 ARUSDT Jun 25
cefdfefd53ed3615bbad0bbd5aab1fd79c119c2479c380c4649c9b9701ecafa4
9071 AVNTUSDT Jun 25
2b1ac0154ba3844e61173d0ce9ca01f72b10a8beb615cc48d75564c939cdc993
9072 TNSRUSDT Jun 25
0b47a3d28295815a45e341bf5690f5ff6b0e34a70558e2a098d8d4cfccab8c99
9073 TNSRUSDT Jun 25
da78ddbc086dd81922d759274c7e2b5fd2504894682398636c86e54918fd2cab
9074 MAVIAUSDT Jun 25
79dc8d5a0e55d1d72fd31ada3d5dcdc2d4a47005b81867b205a14c0e48ffc4f3
9075 LDOUSDT Jun 25
5011b68dc2354ab6f293e4aec1f8d8775edb7ba0a9444d2888cd8ce1fd09e1ab
9076 POLUSDT Jun 25
805af2817fe569abd3853214259bf8c8722aeb552809185523ccd15e714382ce
9077 AVNTUSDT Jun 25
85e8582e75f388de3258cbc63530492a5b636bc3ff2219f76254d449bf711c24
9078 MEUSDT Jun 25
55a02b65a7ea8e2902a631ec11fcc538c2ed2a59c78e80d0f9d10896ab927c22
9079 MANTAUSDT Jun 25
e969331005df291dc37948c6dd0a70e1ca96f955233789a67e40d76cddacea55
9080 WLFIUSDT Jun 24
719eb3edb28000dbbe6a9a5b8a44875df95a0067cd3593732d9e1dd814fd8d28
9081 EIGENUSDT Jun 24
10e91f95f996589f3b42e45b51e250c1165a28cd38bae54d3d3e53e6e9614bf4
9082 BASUSDT Jun 24
015469b4996f456918ac5abbfc33bfb7de1d73bb79a9bb02567235f202b8d47c
9083 SAHARAUSDT Jun 24
28f6f75b3b17d08cd7b32ddf6c02e56fab9abb8a11e5fa3ce522bce3beddb8cf
9084 UBUSDT Jun 24
b77819410d2214f42231ee4fd2d01e30798f7e267a8abb6fe0d1e1b507a0eb61
9085 HEIUSDT Jun 24
69f0f4507977a79918cb37fd803c952b80af97a3ddd71c284a83594ec43f5479
9086 NEARUSDT Jun 24
1d3fb19ac54067356a97fb581f074dd913ff231131ed3dd504ebe4e5c99f6450
9087 HUSDT Jun 24
1bce5d2a1a8df16465651fee661bead36c0e50c5cdd9f75c3177713e2a2d0311
9088 BELUSDT Jun 24
ef8b65caa7ad4c6cd2a32603decf97d249339f6bc503a57c9e462fc4a467860a
9089 TIAUSDT Jun 24
72d01e722a8c56c3ae0468ff09687d0396ceb2578fd106fddb72d01558c5a8fb
9090 VICUSDT Jun 24
e0d2d82da7f9c06fff3acabafb3991ba6685a823ab03b2ff5b34674d962ffa89
9091 WUSDT Jun 24
8ae22f28a389578b7bbbe4840994823f2b0bf29003ae549f2cf0ccc7e392f497
9092 SUSDT Jun 24
0881c4175710694756c702b2d0a6bed354b8123dbcd76e55ecc1ad0c3ac792e0
9093 SAGAUSDT Jun 23
b9baf805d926ecf56c16e6d49932743301dc9313f69d17cb0783b0937bf36d68
9094 CCUSDT Jun 23
48e3c43bae45ed7a5c90402822cdb3ec36eba94c3ac999421a056ad1482a291f
9095 PRLUSDT Jun 23
d9cfb26c1a4044cc341684420a134e8cb1c6b8907281bde9ce73e3b58cee9c63
9096 ZROUSDT Jun 23
790710b915dedfe88d35e21737c72ea464f628db4ec6cd9f523938d457a68c75
9097 JUPUSDT Jun 23
5955d1fdb1bbc37f90886b2b19b0500d16fb3cc54a6f358f81185a8f0395f287
9098 ASTERUSDT Jun 23
72dcd33d5129eddf0a03f26ec206028c47cb1ffa31d9cc0b95992073759a9a37
9099 CLOUSDT Jun 23
550eff2f6aa0edaaf2a4ede2ecb37e01cf944107d1110e4f2847fbef97ec6db6

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