with list as (
select distinct(from_address) as wallet_address from optimism.core.fact_transactions
where status = 'SUCCESS'
and block_timestamp >= current_date - interval '1 month'
UNION
select distinct(to_address) as wallet_address from optimism.core.fact_transactions
where status = 'SUCCESS'
and block_timestamp >= current_date - interval '1 month'
)
select count(*) as unique_users from list