WholeStageCodegen (1)
  CometColumnarToRow
    InputAdapter
      CometTakeOrderedAndProject [c_last_name,c_first_name,substr(s_city, 1, 30),ss_ticket_number,amt,profit,s_city]
        CometProject [c_last_name,c_first_name,substr(s_city, 1, 30),ss_ticket_number,amt,profit,s_city]
          CometBroadcastHashJoin [ss_ticket_number,ss_customer_sk,s_city,amt,profit,c_customer_sk,c_first_name,c_last_name]
            CometHashAggregate [ss_ticket_number,ss_customer_sk,s_city,amt,profit,ss_addr_sk,sum,sum,sum(UnscaledValue(ss_coupon_amt)),sum(UnscaledValue(ss_net_profit))]
              CometExchange [ss_ticket_number,ss_customer_sk,ss_addr_sk,s_city] #1
                CometHashAggregate [ss_ticket_number,ss_customer_sk,ss_addr_sk,s_city,sum,sum,ss_coupon_amt,ss_net_profit]
                  CometProject [ss_customer_sk,ss_addr_sk,ss_ticket_number,ss_coupon_amt,ss_net_profit,s_city]
                    CometBroadcastHashJoin [ss_customer_sk,ss_hdemo_sk,ss_addr_sk,ss_ticket_number,ss_coupon_amt,ss_net_profit,s_city,hd_demo_sk]
                      CometProject [ss_customer_sk,ss_hdemo_sk,ss_addr_sk,ss_ticket_number,ss_coupon_amt,ss_net_profit,s_city]
                        CometBroadcastHashJoin [ss_customer_sk,ss_hdemo_sk,ss_addr_sk,ss_store_sk,ss_ticket_number,ss_coupon_amt,ss_net_profit,s_store_sk,s_city]
                          CometProject [ss_customer_sk,ss_hdemo_sk,ss_addr_sk,ss_store_sk,ss_ticket_number,ss_coupon_amt,ss_net_profit]
                            CometBroadcastHashJoin [ss_customer_sk,ss_hdemo_sk,ss_addr_sk,ss_store_sk,ss_ticket_number,ss_coupon_amt,ss_net_profit,ss_sold_date_sk,d_date_sk]
                              CometFilter [ss_customer_sk,ss_hdemo_sk,ss_addr_sk,ss_store_sk,ss_ticket_number,ss_coupon_amt,ss_net_profit,ss_sold_date_sk]
                                CometScan [native_iceberg_compat] parquet spark_catalog.default.store_sales [ss_customer_sk,ss_hdemo_sk,ss_addr_sk,ss_store_sk,ss_ticket_number,ss_coupon_amt,ss_net_profit,ss_sold_date_sk]
                                  SubqueryBroadcast [d_date_sk] #1
                                    BroadcastExchange #2
                                      WholeStageCodegen (1)
                                        CometColumnarToRow
                                          InputAdapter
                                            CometProject [d_date_sk]
                                              CometFilter [d_date_sk,d_year,d_dow]
                                                CometScan [native_iceberg_compat] parquet spark_catalog.default.date_dim [d_date_sk,d_year,d_dow]
                              CometBroadcastExchange [d_date_sk] #3
                                CometProject [d_date_sk]
                                  CometFilter [d_date_sk,d_year,d_dow]
                                    CometScan [native_iceberg_compat] parquet spark_catalog.default.date_dim [d_date_sk,d_year,d_dow]
                          CometBroadcastExchange [s_store_sk,s_city] #4
                            CometProject [s_store_sk,s_city]
                              CometFilter [s_store_sk,s_number_employees,s_city]
                                CometScan [native_iceberg_compat] parquet spark_catalog.default.store [s_store_sk,s_number_employees,s_city]
                      CometBroadcastExchange [hd_demo_sk] #5
                        CometProject [hd_demo_sk]
                          CometFilter [hd_demo_sk,hd_dep_count,hd_vehicle_count]
                            CometScan [native_iceberg_compat] parquet spark_catalog.default.household_demographics [hd_demo_sk,hd_dep_count,hd_vehicle_count]
            CometBroadcastExchange [c_customer_sk,c_first_name,c_last_name] #6
              CometProject [c_first_name,c_last_name] [c_customer_sk,c_first_name,c_last_name]
                CometFilter [c_customer_sk,c_first_name,c_last_name]
                  CometScan [native_iceberg_compat] parquet spark_catalog.default.customer [c_customer_sk,c_first_name,c_last_name]
