{"address":"0x12783b423b9cf1a136bd7e0f8baca5944f5baacc","chain":"robinhood","chainName":"Robinhood Chain","chains":["robinhood"],"name":"RiversLaunchHook","listed":true,"description":"A singleton Uniswap v4 hook for the Rivers protocol that manages phased token launches. Restricts swaps to the controller before fee activation, dynamically overrides LP fees based on pool phase (pre/post-graduation), and collects protocol trade fees from public swaps via beforeSwap/afterSwap deltas.","deployer":null,"creationTx":null,"codeBytes":9578,"implementation":null,"verified":true,"audit":null,"upgradeable":false,"swapAccess":"governance","dynamicFee":true,"customData":false,"flags":["beforeInitialize","beforeAddLiquidity","beforeRemoveLiquidity","beforeSwap","afterSwap","beforeSwapReturnsDelta","afterSwapReturnsDelta"],"flagBits":10956,"lines":[{"key":"access","level":"red","text":"Can block swaps","detail":"Swaps are gated (governance): only some addresses, or only at some times, can trade through it."},{"key":"afterSwapReturnsDelta","level":"red","text":"Can take a fee from your output","detail":"After the pool fills your swap, the hook can keep part of what you were about to receive."},{"key":"beforeSwapReturnsDelta","level":"red","text":"Can change the price you get","detail":"Before your swap runs, the hook can take or add tokens, so the amount you get is set by its code as well as the pool."},{"key":"beforeSwap","level":"amber","text":"Runs code before your swap and can block it","detail":"The hook is called before every swap. It can revert, which makes your swap fail."},{"key":"afterSwap","level":"amber","text":"Runs code after your swap and can block it","detail":"The hook is called after every swap. It can revert, which undoes your swap."},{"key":"beforeRemoveLiquidity","level":"amber","text":"Can block LPs from withdrawing","detail":"Called before each withdrawal. It can revert, which stops liquidity providers from leaving."},{"key":"beforeAddLiquidity","level":"grey","text":"Can block people from adding liquidity","detail":"Called before each deposit into the pool."},{"key":"beforeInitialize","level":"grey","text":"Runs code when a pool is created","detail":"Called once, when someone creates a pool with this hook."},{"key":"dynamicFee","level":"amber","text":"Can charge a different fee on each swap","detail":"The pool's LP fee is dynamic: the hook sets it, swap by swap."}],"score":50,"scoreItems":[{"label":"Can change swap amounts","points":-25},{"label":"Swap access is gated","points":-15},{"label":"Dynamic fee","points":-10}],"pools":11,"activePools":1,"swaps24":0,"swaps7":1,"volume24Usd":0,"volume7Usd":10,"firstSeenBlock":9075907,"firstSeen":1783986674,"ageDays":104.64554398148148,"poolList":[{"id":"0x51fc7554af6a475eb6f2cc8b50efa550872071e837387f0786beff24f91990cd","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0xf8649c8b6bc9b372c40803e45830d1c1e1fc030a","s":"RIVERS","d":18,"usd":null},"fee":8388608,"ts":60,"b":9134056,"t":1783992501,"s7":1,"s24":0,"v7":10,"u":1},{"id":"0x17779de1af394f047b8b4be405cc4cd8e009408202abd0ec28e0c17c9aacd042","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0x0a085842f863a2314ca70efed9a323658056cc36","s":"?","d":18,"usd":null},"fee":8388608,"ts":60,"b":41927974,"t":1787279824,"s7":0,"s24":0,"v7":0,"u":0},{"id":"0x4b48740c632ac9f354358f666b8c905b47291ff7b61602d9bf67ae6d7d526db1","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0xaf4eb550d3883f16d8e12d3bb6777b823972de1a","s":"?","d":18,"usd":null},"fee":8388608,"ts":60,"b":9180948,"t":1783997201,"s7":0,"s24":0,"v7":0,"u":0},{"id":"0x0888cb721a320edaff920ce8f4747023a7a426ba81d30a10357566f1403c86e4","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0x745531b0e693b4e9573ef95189e2d7915d30062b","s":"?","d":18,"usd":null},"fee":8388608,"ts":60,"b":9180616,"t":1783997167,"s7":0,"s24":0,"v7":0,"u":0},{"id":"0x9a40d6f44726ea877205d4fa960fbdb2a499631e847b74f7573bd3bb1cd0e5c8","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0xc35f68c652a54c7450e9bae46e807e87605f3c96","s":"?","d":18,"usd":null},"fee":8388608,"ts":60,"b":9177739,"t":1783996879,"s7":0,"s24":0,"v7":0,"u":0},{"id":"0x486b5302cd6e2745680e03c3ac3fc79b047fbb0e7d7b5adcac1ae98eb5e692d5","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0x52fc3c1e454ddaac187d33ab6641bc1b4a762661","s":"?","d":18,"usd":null},"fee":8388608,"ts":60,"b":9173105,"t":1783996415,"s7":0,"s24":0,"v7":0,"u":0},{"id":"0x3cb28a7dbee46e64a3e94b8253221f363559ed9f7c6fcf05315c953a0f80355f","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0x86a73ad7989a62f32523f44791149a81b3a15e39","s":"?","d":18,"usd":null},"fee":8388608,"ts":60,"b":9172696,"t":1783996374,"s7":0,"s24":0,"v7":0,"u":0},{"id":"0x4b0b80af255167999ca4440c830b63c5ff58986aee2e862b50e7c6296d0f2024","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0x626f996c79fa12f22b6077fde783aef93a7cd1df","s":"?","d":18,"usd":null},"fee":8388608,"ts":60,"b":9171142,"t":1783996218,"s7":0,"s24":0,"v7":0,"u":0},{"id":"0x364a0d868658a49a7da2d827bc21b732c14ac8211c4d18db8740c12bc54999eb","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0x046d9823a4a77706a3c413e0083a854a174761c3","s":"?","d":18,"usd":null},"fee":8388608,"ts":60,"b":9170236,"t":1783996127,"s7":0,"s24":0,"v7":0,"u":0},{"id":"0x934c53604f1cc687ece5e66e99373a5c418ddefb7b83531952caf25536648f51","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0x3148182a0b9d0898bb55f635c48d660fa26c88ac","s":"?","d":18,"usd":null},"fee":8388608,"ts":60,"b":9154143,"t":1783994514,"s7":0,"s24":0,"v7":0,"u":0},{"id":"0xb9b6e6fbf35a5a5fda69c7f55b4d25624536b1c7d1034e58117335d1b3d2745d","t0":{"a":"0x0000000000000000000000000000000000000000","s":"ETH","d":18,"usd":2331.971314},"t1":{"a":"0x3bc8bcc8050025df38378ce982fe6d8fd0a79a0a","s":"?","d":18,"usd":null},"fee":8388608,"ts":60,"b":9075907,"t":1783986674,"s7":0,"s24":0,"v7":0,"u":0}],"daily":{"s":[0,1,0,0,0,0,0],"v":[0,10,0,0,0,0,0]},"days":7,"probe":{"pool":"0x51fc7554af6a475eb6f2cc8b50efa550872071e837387f0786beff24f91990cd","t":1793046631,"dir":[{"zf1":true,"inRaw":"19022589428797","outRaw":"8337309617869186911533","expRaw":"8421472136377474988385","takeBps":100,"gas":103659,"reverted":false},{"zf1":false,"inRaw":"8421472136377805075979","outRaw":"18832479947791","expRaw":"19022589428797","takeBps":100,"gas":103194,"reverted":false}],"lpFee":0,"takeBps":100,"reverted":false,"gas":103659,"pair":"ETH / RIVERS"},"snapshot":{"block":98513114,"ts":1793028049}}