remote exchange (GATHER, SINGLE, [])
    local exchange (GATHER, UNKNOWN, [])
        remote exchange (REPARTITION, ROUND_ROBIN, [])
            final aggregation over (i_brand, i_brand_id, t_hour, t_minute)
                local exchange (GATHER, SINGLE, [])
                    remote exchange (REPARTITION, HASH, [i_brand, i_brand_id, t_hour, t_minute])
                        intermediate aggregation over (i_brand, i_brand_id, t_hour, t_minute)
                            join (INNER, REPLICATED):
                                join (INNER, REPLICATED):
                                    local exchange (REPARTITION, ROUND_ROBIN, [])
                                        partial aggregation over (ws_item_sk, ws_sold_time_sk)
                                            join (INNER, REPLICATED):
                                                dynamic filter (ws_item_sk::EQUAL, ws_sold_date_sk::EQUAL, ws_sold_time_sk::EQUAL)
                                                    scan web_sales
                                                local exchange (GATHER, SINGLE, [])
                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                        scan date_dim
                                        partial aggregation over (cs_item_sk, cs_sold_time_sk)
                                            join (INNER, REPLICATED):
                                                dynamic filter (cs_item_sk::EQUAL, cs_sold_date_sk::EQUAL, cs_sold_time_sk::EQUAL)
                                                    scan catalog_sales
                                                local exchange (GATHER, SINGLE, [])
                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                        scan date_dim
                                        partial aggregation over (ss_item_sk, ss_sold_time_sk)
                                            join (INNER, REPLICATED):
                                                dynamic filter (ss_item_sk::EQUAL, ss_sold_date_sk::EQUAL, ss_sold_time_sk::EQUAL)
                                                    scan store_sales
                                                local exchange (GATHER, SINGLE, [])
                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                        scan date_dim
                                    local exchange (GATHER, SINGLE, [])
                                        remote exchange (REPLICATE, BROADCAST, [])
                                            scan item
                                local exchange (GATHER, SINGLE, [])
                                    remote exchange (REPLICATE, BROADCAST, [])
                                        scan time_dim
