local exchange (GATHER, SINGLE, [])
    remote exchange (GATHER, SINGLE, [])
        join (INNER, PARTITIONED):
            join (INNER, PARTITIONED):
                join (INNER, PARTITIONED):
                    remote exchange (REPARTITION, HASH, ["c_customer_id_214"])
                        join (INNER, PARTITIONED):
                            join (INNER, PARTITIONED):
                                local exchange (REPARTITION, ROUND_ROBIN, [])
                                    remote exchange (REPARTITION, HASH, ["c_customer_id"])
                                        final aggregation over (c_birth_country, c_customer_id, c_email_address, c_first_name, c_last_name, c_login, c_preferred_cust_flag, d_year)
                                            local exchange (GATHER, SINGLE, [])
                                                remote exchange (REPARTITION, HASH, ["c_birth_country", "c_customer_id", "c_email_address", "c_first_name", "c_last_name", "c_login", "c_preferred_cust_flag", "d_year"])
                                                    partial aggregation over (c_birth_country, c_customer_id, c_email_address, c_first_name, c_last_name, c_login, c_preferred_cust_flag, d_year)
                                                        join (INNER, PARTITIONED):
                                                            remote exchange (REPARTITION, HASH, ["ss_customer_sk"])
                                                                join (INNER, REPLICATED):
                                                                    scan store_sales
                                                                    local exchange (GATHER, SINGLE, [])
                                                                        remote exchange (REPLICATE, BROADCAST, [])
                                                                            scan date_dim (pushdown = true)
                                                            local exchange (GATHER, SINGLE, [])
                                                                remote exchange (REPARTITION, HASH, ["c_customer_sk"])
                                                                    scan customer
                                    remote exchange (REPARTITION, HASH, ["c_customer_id_31"])
                                        single aggregation over (c_birth_country_44, c_customer_id_31, c_email_address_46, c_first_name_38, c_last_name_39, c_login_45, c_preferred_cust_flag_40, d_year_56)
                                            join (INNER, REPLICATED):
                                                join (INNER, REPLICATED):
                                                    values (0 rows)
                                                    values (0 rows)
                                                values (0 rows)
                                    remote exchange (REPARTITION, HASH, ["c_customer_id_128"])
                                        single aggregation over (c_birth_country_141, c_customer_id_128, c_email_address_143, c_first_name_135, c_last_name_136, c_login_142, c_preferred_cust_flag_137, d_year_153)
                                            join (INNER, REPLICATED):
                                                join (INNER, REPLICATED):
                                                    values (0 rows)
                                                    values (0 rows)
                                                values (0 rows)
                                local exchange (GATHER, SINGLE, [])
                                    remote exchange (REPARTITION, HASH, ["c_customer_id_255"])
                                        final aggregation over (c_birth_country_268, c_customer_id_255, c_email_address_270, c_first_name_262, c_last_name_263, c_login_269, c_preferred_cust_flag_264, d_year_303)
                                            local exchange (GATHER, SINGLE, [])
                                                remote exchange (REPARTITION, HASH, ["c_birth_country_268", "c_customer_id_255", "c_email_address_270", "c_first_name_262", "c_last_name_263", "c_login_269", "c_preferred_cust_flag_264", "d_year_303"])
                                                    partial aggregation over (c_birth_country_268, c_customer_id_255, c_email_address_270, c_first_name_262, c_last_name_263, c_login_269, c_preferred_cust_flag_264, d_year_303)
                                                        join (INNER, PARTITIONED):
                                                            remote exchange (REPARTITION, HASH, ["ss_customer_sk_276"])
                                                                join (INNER, REPLICATED):
                                                                    scan store_sales
                                                                    local exchange (GATHER, SINGLE, [])
                                                                        remote exchange (REPLICATE, BROADCAST, [])
                                                                            scan date_dim (pushdown = true)
                                                            local exchange (GATHER, SINGLE, [])
                                                                remote exchange (REPARTITION, HASH, ["c_customer_sk_254"])
                                                                    scan customer
                                    remote exchange (REPARTITION, HASH, ["c_customer_id_365"])
                                        single aggregation over (c_birth_country_378, c_customer_id_365, c_email_address_380, c_first_name_372, c_last_name_373, c_login_379, c_preferred_cust_flag_374, d_year_424)
                                            join (INNER, REPLICATED):
                                                join (INNER, REPLICATED):
                                                    values (0 rows)
                                                    values (0 rows)
                                                values (0 rows)
                                    remote exchange (REPARTITION, HASH, ["c_customer_id_496"])
                                        single aggregation over (c_birth_country_509, c_customer_id_496, c_email_address_511, c_first_name_503, c_last_name_504, c_login_510, c_preferred_cust_flag_505, d_year_555)
                                            join (INNER, REPLICATED):
                                                join (INNER, REPLICATED):
                                                    values (0 rows)
                                                    values (0 rows)
                                                values (0 rows)
                            local exchange (GATHER, SINGLE, [])
                                remote exchange (REPARTITION, HASH, ["c_customer_id_657"])
                                    single aggregation over (c_birth_country_670, c_customer_id_657, c_email_address_672, c_first_name_664, c_last_name_665, c_login_671, c_preferred_cust_flag_666, d_year_705)
                                        join (INNER, REPLICATED):
                                            join (INNER, REPLICATED):
                                                values (0 rows)
                                                values (0 rows)
                                            values (0 rows)
                                remote exchange (REPARTITION, HASH, ["c_customer_id_767"])
                                    final aggregation over (c_birth_country_780, c_customer_id_767, c_email_address_782, c_first_name_774, c_last_name_775, c_login_781, c_preferred_cust_flag_776, d_year_826)
                                        local exchange (GATHER, SINGLE, [])
                                            remote exchange (REPARTITION, HASH, ["c_birth_country_780", "c_customer_id_767", "c_email_address_782", "c_first_name_774", "c_last_name_775", "c_login_781", "c_preferred_cust_flag_776", "d_year_826"])
                                                partial aggregation over (c_birth_country_780, c_customer_id_767, c_email_address_782, c_first_name_774, c_last_name_775, c_login_781, c_preferred_cust_flag_776, d_year_826)
                                                    join (INNER, PARTITIONED):
                                                        remote exchange (REPARTITION, HASH, ["cs_bill_customer_sk_788"])
                                                            join (INNER, REPLICATED):
                                                                scan catalog_sales
                                                                local exchange (GATHER, SINGLE, [])
                                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                                        scan date_dim (pushdown = true)
                                                        local exchange (GATHER, SINGLE, [])
                                                            remote exchange (REPARTITION, HASH, ["c_customer_sk_766"])
                                                                scan customer
                                remote exchange (REPARTITION, HASH, ["c_customer_id_898"])
                                    single aggregation over (c_birth_country_911, c_customer_id_898, c_email_address_913, c_first_name_905, c_last_name_906, c_login_912, c_preferred_cust_flag_907, d_year_957)
                                        join (INNER, REPLICATED):
                                            join (INNER, REPLICATED):
                                                values (0 rows)
                                                values (0 rows)
                                            values (0 rows)
                    local exchange (GATHER, SINGLE, [])
                        remote exchange (REPARTITION, HASH, ["c_customer_id_1059"])
                            single aggregation over (c_birth_country_1072, c_customer_id_1059, c_email_address_1074, c_first_name_1066, c_last_name_1067, c_login_1073, c_preferred_cust_flag_1068, d_year_1107)
                                join (INNER, REPLICATED):
                                    join (INNER, REPLICATED):
                                        values (0 rows)
                                        values (0 rows)
                                    values (0 rows)
                        remote exchange (REPARTITION, HASH, ["c_customer_id_1169"])
                            final aggregation over (c_birth_country_1182, c_customer_id_1169, c_email_address_1184, c_first_name_1176, c_last_name_1177, c_login_1183, c_preferred_cust_flag_1178, d_year_1228)
                                local exchange (GATHER, SINGLE, [])
                                    remote exchange (REPARTITION, HASH, ["c_birth_country_1182", "c_customer_id_1169", "c_email_address_1184", "c_first_name_1176", "c_last_name_1177", "c_login_1183", "c_preferred_cust_flag_1178", "d_year_1228"])
                                        partial aggregation over (c_birth_country_1182, c_customer_id_1169, c_email_address_1184, c_first_name_1176, c_last_name_1177, c_login_1183, c_preferred_cust_flag_1178, d_year_1228)
                                            join (INNER, PARTITIONED):
                                                remote exchange (REPARTITION, HASH, ["cs_bill_customer_sk_1190"])
                                                    join (INNER, REPLICATED):
                                                        scan catalog_sales
                                                        local exchange (GATHER, SINGLE, [])
                                                            remote exchange (REPLICATE, BROADCAST, [])
                                                                scan date_dim (pushdown = true)
                                                local exchange (GATHER, SINGLE, [])
                                                    remote exchange (REPARTITION, HASH, ["c_customer_sk_1168"])
                                                        scan customer
                        remote exchange (REPARTITION, HASH, ["c_customer_id_1300"])
                            single aggregation over (c_birth_country_1313, c_customer_id_1300, c_email_address_1315, c_first_name_1307, c_last_name_1308, c_login_1314, c_preferred_cust_flag_1309, d_year_1359)
                                join (INNER, REPLICATED):
                                    join (INNER, REPLICATED):
                                        values (0 rows)
                                        values (0 rows)
                                    values (0 rows)
                local exchange (GATHER, SINGLE, [])
                    remote exchange (REPARTITION, HASH, ["c_customer_id_1461"])
                        single aggregation over (c_birth_country_1474, c_customer_id_1461, c_email_address_1476, c_first_name_1468, c_last_name_1469, c_login_1475, c_preferred_cust_flag_1470, d_year_1509)
                            join (INNER, REPLICATED):
                                join (INNER, REPLICATED):
                                    values (0 rows)
                                    values (0 rows)
                                values (0 rows)
                    remote exchange (REPARTITION, HASH, ["c_customer_id_1571"])
                        single aggregation over (c_birth_country_1584, c_customer_id_1571, c_email_address_1586, c_first_name_1578, c_last_name_1579, c_login_1585, c_preferred_cust_flag_1580, d_year_1630)
                            join (INNER, REPLICATED):
                                join (INNER, REPLICATED):
                                    values (0 rows)
                                    values (0 rows)
                                values (0 rows)
                    remote exchange (REPARTITION, HASH, ["c_customer_id_1702"])
                        final aggregation over (c_birth_country_1715, c_customer_id_1702, c_email_address_1717, c_first_name_1709, c_last_name_1710, c_login_1716, c_preferred_cust_flag_1711, d_year_1761)
                            local exchange (GATHER, SINGLE, [])
                                remote exchange (REPARTITION, HASH, ["c_birth_country_1715", "c_customer_id_1702", "c_email_address_1717", "c_first_name_1709", "c_last_name_1710", "c_login_1716", "c_preferred_cust_flag_1711", "d_year_1761"])
                                    partial aggregation over (c_birth_country_1715, c_customer_id_1702, c_email_address_1717, c_first_name_1709, c_last_name_1710, c_login_1716, c_preferred_cust_flag_1711, d_year_1761)
                                        join (INNER, PARTITIONED):
                                            remote exchange (REPARTITION, HASH, ["ws_bill_customer_sk_1724"])
                                                join (INNER, REPLICATED):
                                                    scan web_sales
                                                    local exchange (GATHER, SINGLE, [])
                                                        remote exchange (REPLICATE, BROADCAST, [])
                                                            scan date_dim (pushdown = true)
                                            local exchange (GATHER, SINGLE, [])
                                                remote exchange (REPARTITION, HASH, ["c_customer_sk_1701"])
                                                    scan customer
            local exchange (GATHER, SINGLE, [])
                remote exchange (REPARTITION, HASH, ["c_customer_id_1863"])
                    single aggregation over (c_birth_country_1876, c_customer_id_1863, c_email_address_1878, c_first_name_1870, c_last_name_1871, c_login_1877, c_preferred_cust_flag_1872, d_year_1911)
                        join (INNER, REPLICATED):
                            join (INNER, REPLICATED):
                                values (0 rows)
                                values (0 rows)
                            values (0 rows)
                remote exchange (REPARTITION, HASH, ["c_customer_id_1973"])
                    single aggregation over (c_birth_country_1986, c_customer_id_1973, c_email_address_1988, c_first_name_1980, c_last_name_1981, c_login_1987, c_preferred_cust_flag_1982, d_year_2032)
                        join (INNER, REPLICATED):
                            join (INNER, REPLICATED):
                                values (0 rows)
                                values (0 rows)
                            values (0 rows)
                remote exchange (REPARTITION, HASH, ["c_customer_id_2104"])
                    final aggregation over (c_birth_country_2117, c_customer_id_2104, c_email_address_2119, c_first_name_2111, c_last_name_2112, c_login_2118, c_preferred_cust_flag_2113, d_year_2163)
                        local exchange (GATHER, SINGLE, [])
                            remote exchange (REPARTITION, HASH, ["c_birth_country_2117", "c_customer_id_2104", "c_email_address_2119", "c_first_name_2111", "c_last_name_2112", "c_login_2118", "c_preferred_cust_flag_2113", "d_year_2163"])
                                partial aggregation over (c_birth_country_2117, c_customer_id_2104, c_email_address_2119, c_first_name_2111, c_last_name_2112, c_login_2118, c_preferred_cust_flag_2113, d_year_2163)
                                    join (INNER, PARTITIONED):
                                        remote exchange (REPARTITION, HASH, ["ws_bill_customer_sk_2126"])
                                            join (INNER, REPLICATED):
                                                scan web_sales
                                                local exchange (GATHER, SINGLE, [])
                                                    remote exchange (REPLICATE, BROADCAST, [])
                                                        scan date_dim (pushdown = true)
                                        local exchange (GATHER, SINGLE, [])
                                            remote exchange (REPARTITION, HASH, ["c_customer_sk_2103"])
                                                scan customer
