SPORTPASSGB - Placeholder + Revealed by wallet Id Updated 23/9/2024
    Updated 2024-09-23
    -- This CTE identifies all Genesis Ball placeholder NFTs
    WITH PlaceholderNFTs AS (
    SELECT DISTINCT
    EVENT_DATA:nftId :: STRING AS nftId,
    EVENT_DATA:mintNumber :: INT AS mintNumber
    FROM
    flow.core.fact_events
    WHERE
    EVENT_CONTRACT = 'A.8f9231920da9af6d.AFLNFT'
    AND EVENT_TYPE = 'NFTMinted'
    AND EVENT_DATA:templateId :: STRING = '129'
    ),

    -- This CTE tracks deposits of placeholders
    PlaceholderDeposits AS (
    SELECT
    e.EVENT_DATA:id :: STRING AS id,
    e.EVENT_DATA:to :: STRING AS toAddress,
    e.BLOCK_TIMESTAMP AS deposit_time
    FROM
    flow.core.fact_events e
    JOIN PlaceholderNFTs p ON e.EVENT_DATA:id :: STRING = p.nftId
    WHERE
    e.EVENT_CONTRACT = 'A.8f9231920da9af6d.AFLNFT'
    AND e.EVENT_TYPE = 'Deposit'
    ),

    -- This CTE tracks destructions of placeholders (assumed to be reveals)
    PlaceholderDestructions AS (
    SELECT
    e.EVENT_DATA:id :: STRING AS id,
    e.EVENT_DATA:"from" :: STRING AS fromAddress,
    e.BLOCK_TIMESTAMP AS destroy_time
    FROM
    flow.core.fact_events e
    JOIN PlaceholderNFTs p ON e.EVENT_DATA:id :: STRING = p.nftId
    QueryRunArchived: QueryRun has been archived