TakeOrderedAndProject [cd_gender,cd_marital_status,cd_education_status,cd_purchase_estimate,cd_credit_rating,cnt1,cnt2,cnt3]
  WholeStageCodegen (6)
    HashAggregate [cd_gender,cd_marital_status,cd_education_status,cd_purchase_estimate,cd_credit_rating,count] [count(1),cnt1,cnt2,cnt3,count]
      CometColumnarToRow
        InputAdapter
          CometColumnarExchange [cd_gender,cd_marital_status,cd_education_status,cd_purchase_estimate,cd_credit_rating] #1
            WholeStageCodegen (5)
              HashAggregate [cd_gender,cd_marital_status,cd_education_status,cd_purchase_estimate,cd_credit_rating] [count,count]
                Project [cd_gender,cd_marital_status,cd_education_status,cd_purchase_estimate,cd_credit_rating]
                  BroadcastHashJoin [c_current_cdemo_sk,cd_demo_sk]
                    Project [c_current_cdemo_sk]
                      BroadcastHashJoin [c_current_addr_sk,ca_address_sk]
                        Project [c_current_cdemo_sk,c_current_addr_sk]
                          BroadcastHashJoin [c_customer_sk,cs_ship_customer_sk]
                            BroadcastHashJoin [c_customer_sk,ws_bill_customer_sk]
                              CometColumnarToRow
                                InputAdapter
                                  CometBroadcastHashJoin [c_customer_sk,c_current_cdemo_sk,c_current_addr_sk,ss_customer_sk]
                                    CometFilter [c_customer_sk,c_current_cdemo_sk,c_current_addr_sk]
                                      CometScan [native_iceberg_compat] parquet spark_catalog.default.customer [c_customer_sk,c_current_cdemo_sk,c_current_addr_sk]
                                    CometBroadcastExchange [ss_customer_sk] #2
                                      CometProject [ss_customer_sk]
                                        CometBroadcastHashJoin [ss_customer_sk,ss_sold_date_sk,d_date_sk]
                                          CometScan [native_iceberg_compat] parquet spark_catalog.default.store_sales [ss_customer_sk,ss_sold_date_sk]
                                            SubqueryBroadcast [d_date_sk] #1
                                              BroadcastExchange #3
                                                WholeStageCodegen (1)
                                                  CometColumnarToRow
                                                    InputAdapter
                                                      CometProject [d_date_sk]
                                                        CometFilter [d_date_sk,d_year,d_moy]
                                                          CometScan [native_iceberg_compat] parquet spark_catalog.default.date_dim [d_date_sk,d_year,d_moy]
                                          CometBroadcastExchange [d_date_sk] #4
                                            CometProject [d_date_sk]
                                              CometFilter [d_date_sk,d_year,d_moy]
                                                CometScan [native_iceberg_compat] parquet spark_catalog.default.date_dim [d_date_sk,d_year,d_moy]
                              InputAdapter
                                BroadcastExchange #5
                                  WholeStageCodegen (1)
                                    CometColumnarToRow
                                      InputAdapter
                                        CometProject [ws_bill_customer_sk]
                                          CometBroadcastHashJoin [ws_bill_customer_sk,ws_sold_date_sk,d_date_sk]
                                            CometScan [native_iceberg_compat] parquet spark_catalog.default.web_sales [ws_bill_customer_sk,ws_sold_date_sk]
                                              ReusedSubquery [d_date_sk] #1
                                            ReusedExchange [d_date_sk] #4
                            InputAdapter
                              BroadcastExchange #6
                                WholeStageCodegen (2)
                                  CometColumnarToRow
                                    InputAdapter
                                      CometProject [cs_ship_customer_sk]
                                        CometBroadcastHashJoin [cs_ship_customer_sk,cs_sold_date_sk,d_date_sk]
                                          CometScan [native_iceberg_compat] parquet spark_catalog.default.catalog_sales [cs_ship_customer_sk,cs_sold_date_sk]
                                            ReusedSubquery [d_date_sk] #1
                                          ReusedExchange [d_date_sk] #4
                        InputAdapter
                          BroadcastExchange #7
                            WholeStageCodegen (3)
                              CometColumnarToRow
                                InputAdapter
                                  CometProject [ca_address_sk]
                                    CometFilter [ca_address_sk,ca_state]
                                      CometScan [native_iceberg_compat] parquet spark_catalog.default.customer_address [ca_address_sk,ca_state]
                    InputAdapter
                      BroadcastExchange #8
                        WholeStageCodegen (4)
                          CometColumnarToRow
                            InputAdapter
                              CometProject [cd_gender,cd_marital_status,cd_education_status,cd_credit_rating] [cd_demo_sk,cd_gender,cd_marital_status,cd_education_status,cd_purchase_estimate,cd_credit_rating]
                                CometFilter [cd_demo_sk,cd_gender,cd_marital_status,cd_education_status,cd_purchase_estimate,cd_credit_rating]
                                  CometScan [native_iceberg_compat] parquet spark_catalog.default.customer_demographics [cd_demo_sk,cd_gender,cd_marital_status,cd_education_status,cd_purchase_estimate,cd_credit_rating]
