TakeOrderedAndProject [i_product_name]
  WholeStageCodegen (4)
    HashAggregate [i_product_name]
      InputAdapter
        Exchange [i_product_name] #1
          WholeStageCodegen (3)
            HashAggregate [i_product_name]
              Project [i_product_name]
                BroadcastHashJoin [i_manufact,i_manufact]
                  Project [i_manufact,i_product_name]
                    Filter [i_manufact_id,i_manufact]
                      ColumnarToRow
                        InputAdapter
                          Scan parquet spark_catalog.default.item [i_manufact_id,i_manufact,i_product_name]
                  InputAdapter
                    BroadcastExchange #2
                      WholeStageCodegen (2)
                        Project [i_manufact]
                          Filter [item_cnt]
                            HashAggregate [i_manufact,count] [count(1),item_cnt,count]
                              InputAdapter
                                Exchange [i_manufact] #3
                                  WholeStageCodegen (1)
                                    HashAggregate [i_manufact] [count,count]
                                      Project [i_manufact]
                                        Filter [i_category,i_color,i_units,i_size,i_manufact]
                                          ColumnarToRow
                                            InputAdapter
                                              Scan parquet spark_catalog.default.item [i_category,i_manufact,i_size,i_color,i_units]
