We decode Uniswap V4 liquidity from Polygon's event logs ourselves and keep only the events emitted by the Uniswap V4 PoolManager (0x67366782805870060151383f4bbff9dab53e5cd6). Forks that deploy the same PoolManager code are left out, because only the canonical contract is included. The table uses the same 44 columns as the events table of our Ethereum dataset, with nothing renamed or derived: Log_Signature_Name is the event, Call_Signature_Name is the method that ran, and Arguments holds the decoded values. A row is one event.
Initialize(id, currency0, currency1, fee, tickSpacing, hooks, sqrtPriceX96, tick) marks a new pool. ModifyLiquidity(id, sender, tickLower, tickUpper, liquidityDelta, salt) is an add when liquidityDelta is positive and a remove when it is negative. Donate(id, sender, amount0, amount1) gives tokens to in-range liquidity. V4 has no per-pool contract: the id argument is the pool and Log_SmartContract is always the PoolManager. Swaps are not in this dataset; they are in the Polygon DEX Trades export, which joins on the transaction hash.