SELECT date(first_use) as day, count(DISTINCT value) as total_contracts,
sum(total_contracts) over (order by day) as cumulative_contracts from
(select value,min(block_timestamp) as first_use
from osmosis.core.fact_swaps, table(flatten(input => pool_ids))
GROUP by 1 )
GROUP by 1
-- order by 2 desc
-- limit 10