with a as (select purchaser, min(block_timestamp) as t
--
from solana.core.fact_nft_sales
where purchaser is not null and sales_amount>0
group by 1 order by 1 desc)
select date(t) as date, count(distinct purchaser) as n_address,
sum(n_address) OVER(ORDER BY date asc ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS cum_n_address
from a
group by 1 order by 1