# h100 hook registry: who writes it, does buying list a wallet? (dataeng, 10 Oct, #851 #852)
Answer: **buying does not list a wallet. The list is written only by one owner EOA, in batch calls, long before the pools exist. A fresh wallet is not listed (returns 0) and cannot be made so by trading.**

## Facts (all from chain, free rpcpool)
- Hook 0x3d9bfb649d92b8d16e18074c1df569b2ccec0144 (11,690 B), storage slot2 = registry **0x6f8e52e18a7b8f87d6e71e95f05c416a2b681c5c** (full address; "c683630d" in the earlier note is the registry's function selector `isListed(address)->bool`, not an address tail).
- Registry: 1,411 B, 3 functions only: `owner()` 8da5cb5b, `c683630d(address)->bool`, `e1e578ae(address[],bool)` (batch set, onlyOwner: "Ownable: caller is not the owner"). Mapping at slot 1 (slot 0 = owner). No hook-side write, no other writer.
- Owner = EOA **0x6ef51badfa87288d130423486b6150bf40e44327** (set at deploy, block 37,820,025; 422 txs so far).
- The registry emits NO events except OwnershipTransferred at deploy (full getLogs scan 37.8M-85.0M: 1 log). Writes are invisible to logs; found by storage bisection + tx decoding.
- Example: pool 0x73b91109..f819 (created block 84,055,861, the only pool with this hook in xsum.csv). Traders 0x11cd934b..99e8 (first swap blk 84,055,932) and 0x05a9ef81..a96b (84,056,021) were both listed at block **37,823,810**, ~46M blocks before they traded; tx 0x06c7dc7d8672b6474abfaedfe1c34f585459cd28f1fe331e1891af0886c8582c, owner -> registry `e1e578ae` with **700 addresses, flag=true** (addresses in /tmp-copy: dataeng/reg_batch1.txt). The pool creator 0x78ae3b13..e38a trades in the same block as creation and is NOT listed (0).
- Owner activity since block 80M (34 txs) is plain ETH transfers to other wallets, no registry writes found there. Writes between 37.8M and 80M not enumerated (375 owner txs, nonce 13 -> 388; would cost ~9k calls); the two checked traders show the batch above is what listed them.

## Meaning for h100 / h100s sellability
- A wallet gets listed only if the owner adds it. Buying through the hook/router does not list it. So an outsider (fresh address) is 0 = same position as the 0xcc-hook pools, where fresh sells paid 0.01%. Whether h100 skims or reverts for unlisted is still unproven by this read, but the gate exists and our wallets are not in it.
- Reproduce: `eth_call to 0x6f8e52e1..1c5c data 0xc683630d + padded address`; mapping slot = keccak(pad32(addr) . pad32(1)); bisect eth_getStorageAt over blocks to find when it flipped.

## d0fd (#851 first half)
Already answered in #838: sale whitelist (slot 14) is set by the token deployer inside the deploy tx, wallets listed before they buy: dataeng/de-d0fd-slot14.md.
