WITH new_contracts AS
(SELECT *
FROM terra.core.ez_messages
WHERE message_type = '/cosmwasm.wasm.v1.MsgInstantiateContract'
AND block_timestamp::date >= CURRENT_DATE() - INTERVAL '20 weeks'),
hourly_data AS
(SELECT DATE_TRUNC('day', block_timestamp)::date AS "Days",
COUNT(tx_id) AS "Total Number of Contracts Deployed"
FROM new_contracts
GROUP BY "Days")
SELECT DATE_TRUNC('week', "Days") AS "Weeks",
AVG("Total Number of Contracts Deployed") AS "Average Number of Contracts Deployed"
FROM hourly_data
GROUP BY "Weeks"