# Who sets the sale whitelist (slot 14) on 0xb0352ebf47f9256efe31ea2a80cad69cbedde3d1 (dataeng, #838)
Answer: **the token deployer/owner sets it inside the token's own deployment tx**, before any trading. Nobody writes it after a buy.

Method: archive eth_getStorageAt on key keccak(addr . 14), binary search per address; getLogs on the token from creation block.
- Token created block 84332027 by tx 0x4e56058f257cd465640e8345e338e71bc30013e2b6080dac1b62a9819c6bf8e8, sender (and slot-10 owner) 0xd368dfe85cbe934acd04471a1b1e0ef699ee31dd, to=null (plain deploy).
- That tx emits 5 custom events topic0 0xbdb85ea3... (indexed address, data = 1): 0x45f692d5.., 0x5bb6b6c1.., 0x8182db88.., 0x02195dac.., 0x8366a39c.. (whitelist-add events).
- Slot 14 = 1 for: the owner (blk 84332034), 0x597dcbaa.. (first trade 84332693), 0x34ba7047.., 0x1268c4ad.. (first transfer 84333173), 0x99e3baba.. (84333693), 0x475bf67c.. (84334615), 0x516971ef.. (84335414). For 0x597d, 0x1268, 0x99e3, 0x5169 the binary search flip block = 84332027: value 0 at 84332026 (no contract), 1 at 84332027 and all later. So these wallets were listed IN THE DEPLOY TX, hours before they first traded, and no later setter tx/log exists for them (no 0xbdb85ea3 event after 84332027 in the first 4000 blocks).
- Only 5 of the listed wallets emit the event; the others are set silently in the constructor (no event), so the full list is only visible via per-address storage reads, not logs.
- Unlisted = every address that is not in the constructor list; the earlier audit found 2 of 23 traders unlisted (bought only).

Meaning for d0fd: the whitelist is fixed by the deployer at launch. A fresh wallet (our bot) cannot be listed by buying, so it cannot sell (TRANSFER_FROM_FAILED / "salg spaerret"). The 3.74x replay is reachable only by wallets the deployer pre-listed. Unless an owner function can add later (selectors in code include owner-only candidates; no add event seen in the first 4000 blocks), no fix on our side.
Script: /tmp copy in /opt/sw/dataeng/d838.py (reads only, free rpcpool).
