remote exchange (GATHER, SINGLE, [])
    local exchange (GATHER, UNKNOWN, [])
        remote exchange (REPARTITION, ROUND_ROBIN, [])
            join (INNER, PARTITIONED):
                remote exchange (REPARTITION, HASH, ["cs_item_sk", "s_store_name", "s_zip"])
                    final hashaggregation over (ca_city, ca_city_92, ca_street_name, ca_street_name_89, ca_street_number, ca_street_number_88, ca_zip, ca_zip_95, cs_item_sk, d_year, d_year_22, d_year_50, i_product_name, s_store_name, s_zip)
                        local exchange (GATHER, SINGLE, [])
                            remote exchange (REPARTITION, HASH, ["ca_city", "ca_city_92", "ca_street_name", "ca_street_name_89", "ca_street_number", "ca_street_number_88", "ca_zip", "ca_zip_95", "cs_item_sk", "d_year", "d_year_22", "d_year_50", "i_product_name", "s_store_name", "s_zip"])
                                partial hashaggregation over (ca_city, ca_city_92, ca_street_name, ca_street_name_89, ca_street_number, ca_street_number_88, ca_zip, ca_zip_95, cs_item_sk, d_year, d_year_22, d_year_50, i_product_name, s_store_name, s_zip)
                                    join (INNER, REPLICATED):
                                        join (INNER, REPLICATED):
                                            join (INNER, REPLICATED):
                                                join (INNER, PARTITIONED):
                                                    remote exchange (REPARTITION, HASH, ["c_current_addr_sk"])
                                                        join (INNER, PARTITIONED):
                                                            remote exchange (REPARTITION, HASH, ["ss_addr_sk"])
                                                                join (INNER, REPLICATED):
                                                                    join (INNER, REPLICATED):
                                                                        join (INNER, REPLICATED):
                                                                            join (INNER, REPLICATED):
                                                                                join (INNER, REPLICATED):
                                                                                    join (INNER, REPLICATED):
                                                                                        join (INNER, REPLICATED):
                                                                                            join (INNER, PARTITIONED):
                                                                                                remote exchange (REPARTITION, HASH, ["ss_customer_sk"])
                                                                                                    join (INNER, REPLICATED):
                                                                                                        join (INNER, REPLICATED):
                                                                                                            join (INNER, PARTITIONED):
                                                                                                                remote exchange (REPARTITION, HASH, ["ss_item_sk"])
                                                                                                                    join (INNER, PARTITIONED):
                                                                                                                        remote exchange (REPARTITION, HASH, ["ss_item_sk", "ss_ticket_number"])
                                                                                                                            scan store_sales
                                                                                                                        local exchange (GATHER, SINGLE, [])
                                                                                                                            remote exchange (REPARTITION, HASH, ["sr_item_sk", "sr_ticket_number"])
                                                                                                                                scan store_returns
                                                                                                                final hashaggregation over (cs_item_sk)
                                                                                                                    local exchange (GATHER, SINGLE, [])
                                                                                                                        remote exchange (REPARTITION, HASH, ["cs_item_sk"])
                                                                                                                            partial hashaggregation over (cs_item_sk)
                                                                                                                                join (INNER, PARTITIONED):
                                                                                                                                    remote exchange (REPARTITION, HASH, ["cs_item_sk", "cs_order_number"])
                                                                                                                                        scan catalog_sales
                                                                                                                                    local exchange (GATHER, SINGLE, [])
                                                                                                                                        remote exchange (REPARTITION, HASH, ["cr_item_sk", "cr_order_number"])
                                                                                                                                            scan catalog_returns
                                                                                                            local exchange (GATHER, SINGLE, [])
                                                                                                                remote exchange (REPLICATE, BROADCAST, [])
                                                                                                                    scan date_dim
                                                                                                        local exchange (GATHER, SINGLE, [])
                                                                                                            remote exchange (REPLICATE, BROADCAST, [])
                                                                                                                scan store
                                                                                                local exchange (GATHER, SINGLE, [])
                                                                                                    remote exchange (REPARTITION, HASH, ["c_customer_sk"])
                                                                                                        scan customer
                                                                                            local exchange (GATHER, SINGLE, [])
                                                                                                remote exchange (REPLICATE, BROADCAST, [])
                                                                                                    scan date_dim
                                                                                        local exchange (GATHER, SINGLE, [])
                                                                                            remote exchange (REPLICATE, BROADCAST, [])
                                                                                                scan date_dim
                                                                                    local exchange (GATHER, SINGLE, [])
                                                                                        remote exchange (REPLICATE, BROADCAST, [])
                                                                                            scan customer_demographics
                                                                                local exchange (GATHER, SINGLE, [])
                                                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                                                        scan customer_demographics
                                                                            local exchange (GATHER, SINGLE, [])
                                                                                remote exchange (REPLICATE, BROADCAST, [])
                                                                                    scan promotion
                                                                        local exchange (GATHER, SINGLE, [])
                                                                            remote exchange (REPLICATE, BROADCAST, [])
                                                                                scan household_demographics
                                                                    local exchange (GATHER, SINGLE, [])
                                                                        remote exchange (REPLICATE, BROADCAST, [])
                                                                            scan household_demographics
                                                            local exchange (GATHER, SINGLE, [])
                                                                remote exchange (REPARTITION, HASH, ["ca_address_sk"])
                                                                    scan customer_address
                                                    local exchange (GATHER, SINGLE, [])
                                                        remote exchange (REPARTITION, HASH, ["ca_address_sk_86"])
                                                            scan customer_address
                                                local exchange (GATHER, SINGLE, [])
                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                        scan income_band
                                            local exchange (GATHER, SINGLE, [])
                                                remote exchange (REPLICATE, BROADCAST, [])
                                                    scan income_band
                                        local exchange (GATHER, SINGLE, [])
                                            remote exchange (REPLICATE, BROADCAST, [])
                                                scan item
                local exchange (GATHER, SINGLE, [])
                    remote exchange (REPARTITION, HASH, ["cs_item_sk_248", "s_store_name_402", "s_zip_422"])
                        final hashaggregation over (ca_city_497, ca_city_510, ca_street_name_494, ca_street_name_507, ca_street_number_493, ca_street_number_506, ca_zip_500, ca_zip_513, cs_item_sk_248, d_year_319, d_year_347, d_year_375, i_product_name_544, s_store_name_402, s_zip_422)
                            local exchange (GATHER, SINGLE, [])
                                remote exchange (REPARTITION, HASH, ["ca_city_497", "ca_city_510", "ca_street_name_494", "ca_street_name_507", "ca_street_number_493", "ca_street_number_506", "ca_zip_500", "ca_zip_513", "cs_item_sk_248", "d_year_319", "d_year_347", "d_year_375", "i_product_name_544", "s_store_name_402", "s_zip_422"])
                                    partial hashaggregation over (ca_city_497, ca_city_510, ca_street_name_494, ca_street_name_507, ca_street_number_493, ca_street_number_506, ca_zip_500, ca_zip_513, cs_item_sk_248, d_year_319, d_year_347, d_year_375, i_product_name_544, s_store_name_402, s_zip_422)
                                        join (INNER, REPLICATED):
                                            join (INNER, REPLICATED):
                                                join (INNER, REPLICATED):
                                                    join (INNER, PARTITIONED):
                                                        remote exchange (REPARTITION, HASH, ["c_current_addr_sk_430"])
                                                            join (INNER, PARTITIONED):
                                                                remote exchange (REPARTITION, HASH, ["ss_addr_sk_196"])
                                                                    join (INNER, REPLICATED):
                                                                        join (INNER, REPLICATED):
                                                                            join (INNER, REPLICATED):
                                                                                join (INNER, REPLICATED):
                                                                                    join (INNER, REPLICATED):
                                                                                        join (INNER, REPLICATED):
                                                                                            join (INNER, REPLICATED):
                                                                                                join (INNER, PARTITIONED):
                                                                                                    remote exchange (REPARTITION, HASH, ["ss_customer_sk_193"])
                                                                                                        join (INNER, REPLICATED):
                                                                                                            join (INNER, REPLICATED):
                                                                                                                join (INNER, PARTITIONED):
                                                                                                                    remote exchange (REPARTITION, HASH, ["ss_item_sk_192"])
                                                                                                                        join (INNER, PARTITIONED):
                                                                                                                            remote exchange (REPARTITION, HASH, ["ss_item_sk_192", "ss_ticket_number_199"])
                                                                                                                                scan store_sales
                                                                                                                            local exchange (GATHER, SINGLE, [])
                                                                                                                                remote exchange (REPARTITION, HASH, ["sr_item_sk_215", "sr_ticket_number_222"])
                                                                                                                                    scan store_returns
                                                                                                                    final hashaggregation over (cs_item_sk_248)
                                                                                                                        local exchange (GATHER, SINGLE, [])
                                                                                                                            remote exchange (REPARTITION, HASH, ["cs_item_sk_248"])
                                                                                                                                partial hashaggregation over (cs_item_sk_248)
                                                                                                                                    join (INNER, PARTITIONED):
                                                                                                                                        remote exchange (REPARTITION, HASH, ["cs_item_sk_248", "cs_order_number_250"])
                                                                                                                                            scan catalog_sales
                                                                                                                                        local exchange (GATHER, SINGLE, [])
                                                                                                                                            remote exchange (REPARTITION, HASH, ["cr_item_sk_269", "cr_order_number_283"])
                                                                                                                                                scan catalog_returns
                                                                                                                local exchange (GATHER, SINGLE, [])
                                                                                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                                                                                        scan date_dim
                                                                                                            local exchange (GATHER, SINGLE, [])
                                                                                                                remote exchange (REPLICATE, BROADCAST, [])
                                                                                                                    scan store
                                                                                                    local exchange (GATHER, SINGLE, [])
                                                                                                        remote exchange (REPARTITION, HASH, ["c_customer_sk_426"])
                                                                                                            scan customer
                                                                                                local exchange (GATHER, SINGLE, [])
                                                                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                                                                        scan date_dim
                                                                                            local exchange (GATHER, SINGLE, [])
                                                                                                remote exchange (REPLICATE, BROADCAST, [])
                                                                                                    scan date_dim
                                                                                        local exchange (GATHER, SINGLE, [])
                                                                                            remote exchange (REPLICATE, BROADCAST, [])
                                                                                                scan customer_demographics
                                                                                    local exchange (GATHER, SINGLE, [])
                                                                                        remote exchange (REPLICATE, BROADCAST, [])
                                                                                            scan customer_demographics
                                                                                local exchange (GATHER, SINGLE, [])
                                                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                                                        scan promotion
                                                                            local exchange (GATHER, SINGLE, [])
                                                                                remote exchange (REPLICATE, BROADCAST, [])
                                                                                    scan household_demographics
                                                                        local exchange (GATHER, SINGLE, [])
                                                                            remote exchange (REPLICATE, BROADCAST, [])
                                                                                scan household_demographics
                                                                local exchange (GATHER, SINGLE, [])
                                                                    remote exchange (REPARTITION, HASH, ["ca_address_sk_491"])
                                                                        scan customer_address
                                                        local exchange (GATHER, SINGLE, [])
                                                            remote exchange (REPARTITION, HASH, ["ca_address_sk_504"])
                                                                scan customer_address
                                                    local exchange (GATHER, SINGLE, [])
                                                        remote exchange (REPLICATE, BROADCAST, [])
                                                            scan income_band
                                                local exchange (GATHER, SINGLE, [])
                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                        scan income_band
                                            local exchange (GATHER, SINGLE, [])
                                                remote exchange (REPLICATE, BROADCAST, [])
                                                    scan item
