ETH / CGD
fee dynamic, now 0%- Swap ETH → CGDhook takes 2.00%
- Swap CGD → ETHhook takes 2%
- Add, then remove liquiditycame back whole
pool 0x2b579be6fbbc67a5b01521260ab82a206320c5ad466b07457295e93c4af4daef
Reading the hook.
The address, the bytecode, then a swap each way through its pool. A few seconds.
8 pools use this hook, the first one 80 d ago.
None of the permissions that let a hook take from swaps or from LPs are switched on.
One direction works and the other is refused (hook). You may be able to buy and not sell.
Liquidity added and removed in the same block came back whole.
Its pools use a dynamic fee that the hook sets before every swap. It stands at 0% now and can change.
Owned by 0x95786a1145B870418aBDa09AeDdfa0D1291c13E5. Owner-style functions: transferOwnership, setFactory.
Not a proxy, no DELEGATECALL, no SELFDESTRUCT.
Each callback refused a call that did not come from the PoolManager.
8 pools over 79 days.
Measured at block 93,088,420. A hook with an owner or a dynamic fee can behave differently later; scan again before a large trade.
A v4 hook's permissions are the last fourteen bits of its address. The PoolManager calls only what they switch on.
A small swap each way and a liquidity round trip, run through the PoolManager and this hook inside a call that is never sent. The pool fee is expected; anything else missing is the hook.
pool 0x2b579be6fbbc67a5b01521260ab82a206320c5ad466b07457295e93c4af4daef
pool 0xc97bfa9371a906d4864bb07fe74b62aa69560db70f94344fd2ba7eb3b3466acd
Selectors found in the dispatcher, named from the public signature database. Red ones are what an owner usually keeps for itself.