local exchange (GATHER, SINGLE, [])
    remote exchange (GATHER, SINGLE, [])
        join (INNER, PARTITIONED):
            join (INNER, PARTITIONED):
                local exchange (GATHER, SINGLE, [])
                    remote exchange (REPARTITION, HASH, ["cc_name", "i_brand", "i_category"])
                        final hashaggregation over (cc_name, d_moy, d_year, i_brand, i_category)
                            local exchange (GATHER, SINGLE, [])
                                remote exchange (REPARTITION, HASH, ["cc_name", "d_moy", "d_year", "i_brand", "i_category"])
                                    partial hashaggregation over (cc_name, d_moy, d_year, i_brand, i_category)
                                        join (INNER, REPLICATED):
                                            join (INNER, REPLICATED):
                                                join (INNER, REPLICATED):
                                                    scan catalog_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 call_center
                local exchange (GATHER, SINGLE, [])
                    remote exchange (REPARTITION, HASH, ["cc_name_131", "i_brand_49", "i_category_53"])
                        final hashaggregation over (cc_name_131, d_moy_105, d_year_103, i_brand_49, i_category_53)
                            local exchange (GATHER, SINGLE, [])
                                remote exchange (REPARTITION, HASH, ["cc_name_131", "d_moy_105", "d_year_103", "i_brand_49", "i_category_53"])
                                    partial hashaggregation over (cc_name_131, d_moy_105, d_year_103, i_brand_49, i_category_53)
                                        join (INNER, REPLICATED):
                                            join (INNER, REPLICATED):
                                                join (INNER, REPLICATED):
                                                    scan catalog_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 call_center
            local exchange (GATHER, SINGLE, [])
                remote exchange (REPARTITION, HASH, ["cc_name_296", "i_brand_214", "i_category_218"])
                    final hashaggregation over (cc_name_296, d_moy_270, d_year_268, i_brand_214, i_category_218)
                        local exchange (GATHER, SINGLE, [])
                            remote exchange (REPARTITION, HASH, ["cc_name_296", "d_moy_270", "d_year_268", "i_brand_214", "i_category_218"])
                                partial hashaggregation over (cc_name_296, d_moy_270, d_year_268, i_brand_214, i_category_218)
                                    join (INNER, REPLICATED):
                                        join (INNER, REPLICATED):
                                            join (INNER, REPLICATED):
                                                scan catalog_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 call_center
