write [%0->$$63, %0->$$66]
-- SINK_WRITE  |PARTITIONED|
  exchange 
  -- SORT_MERGE_EXCHANGE [$$63(ASC) ]  |PARTITIONED|
    project ([$$63, $$66])
    -- STREAM_PROJECT  |PARTITIONED|
      assign [$$66] <- [function-call: hive:org.apache.hadoop.hive.ql.udf.UDFOPDivide, Args:[%0->$$64, %0->$$65]]
      -- ASSIGN  |PARTITIONED|
        exchange 
        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
          group by ([$$63 := %0->$$70]) decor ([]) {
                    aggregate [$$64, $$65] <- [function-call: hive:sum(FINAL), Args:[%0->$$68], function-call: hive:sum(FINAL), Args:[%0->$$69]]
                    -- AGGREGATE  |LOCAL|
                      nested tuple source
                      -- NESTED_TUPLE_SOURCE  |LOCAL|
                 }
          -- PRE_CLUSTERED_GROUP_BY[$$70]  |PARTITIONED|
            exchange 
            -- HASH_PARTITION_MERGE_EXCHANGE MERGE:[$$70(ASC)] HASH:[$$70]  |PARTITIONED|
              group by ([$$70 := %0->$$61]) decor ([]) {
                        aggregate [$$68, $$69] <- [function-call: hive:sum(PARTIAL1), Args:[function-call: hive:org.apache.hadoop.hive.ql.udf.generic.GenericUDFWhen, Args:[function-call: algebricks:eq, Args:[%0->$$2, BRAZIL], %0->$$62, 0.0]], function-call: hive:sum(PARTIAL1), Args:[%0->$$62]]
                        -- AGGREGATE  |LOCAL|
                          nested tuple source
                          -- NESTED_TUPLE_SOURCE  |LOCAL|
                     }
              -- SORT_GROUP_BY[$$61]  |PARTITIONED|
                exchange 
                -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                  project ([$$61, $$62, $$2])
                  -- STREAM_PROJECT  |PARTITIONED|
                    assign [$$61, $$62] <- [function-call: hive:org.apache.hadoop.hive.ql.udf.UDFYear, Args:[%0->$$41], function-call: hive:org.apache.hadoop.hive.ql.udf.UDFOPMultiply, Args:[%0->$$26, function-call: hive:org.apache.hadoop.hive.ql.udf.UDFOPMinus, Args:[1, %0->$$27]]]
                    -- ASSIGN  |PARTITIONED|
                      project ([$$2, $$41, $$27, $$26])
                      -- STREAM_PROJECT  |PARTITIONED|
                        exchange 
                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                          join (function-call: algebricks:eq, Args:[%0->$$8, %0->$$1])
                          -- HYBRID_HASH_JOIN [$$8][$$1]  |PARTITIONED|
                            exchange 
                            -- HASH_PARTITION_EXCHANGE [$$8]  |PARTITIONED|
                              project ([$$8, $$41, $$27, $$26])
                              -- STREAM_PROJECT  |PARTITIONED|
                                exchange 
                                -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                  join (function-call: algebricks:eq, Args:[%0->$$23, %0->$$5])
                                  -- HYBRID_HASH_JOIN [$$23][$$5]  |PARTITIONED|
                                    exchange 
                                    -- HASH_PARTITION_EXCHANGE [$$23]  |PARTITIONED|
                                      project ([$$41, $$27, $$26, $$23])
                                      -- STREAM_PROJECT  |PARTITIONED|
                                        exchange 
                                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                          join (function-call: algebricks:eq, Args:[%0->$$22, %0->$$12])
                                          -- HYBRID_HASH_JOIN [$$22][$$12]  |PARTITIONED|
                                            exchange 
                                            -- HASH_PARTITION_EXCHANGE [$$22]  |PARTITIONED|
                                              project ([$$41, $$22, $$23, $$26, $$27])
                                              -- STREAM_PROJECT  |PARTITIONED|
                                                exchange 
                                                -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                  join (function-call: algebricks:eq, Args:[%0->$$21, %0->$$37])
                                                  -- HYBRID_HASH_JOIN [$$21][$$37]  |PARTITIONED|
                                                    exchange 
                                                    -- HASH_PARTITION_EXCHANGE [$$21]  |PARTITIONED|
                                                      data-scan [$$21, $$22, $$23, $$26, $$27]<-[$$21, $$22, $$23, $$24, $$25, $$26, $$27, $$28, $$29, $$30, $$31, $$32, $$33, $$34, $$35, $$36] <- default.lineitem
                                                      -- DATASOURCE_SCAN  |PARTITIONED|
                                                        exchange 
                                                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                          empty-tuple-source
                                                          -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
                                                    exchange 
                                                    -- HASH_PARTITION_EXCHANGE [$$37]  |PARTITIONED|
                                                      project ([$$37, $$41])
                                                      -- STREAM_PROJECT  |PARTITIONED|
                                                        exchange 
                                                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                          join (function-call: algebricks:eq, Args:[%0->$$46, %0->$$38])
                                                          -- HYBRID_HASH_JOIN [$$46][$$38]  |PARTITIONED|
                                                            exchange 
                                                            -- HASH_PARTITION_EXCHANGE [$$46]  |PARTITIONED|
                                                              project ([$$46])
                                                              -- STREAM_PROJECT  |PARTITIONED|
                                                                exchange 
                                                                -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                  join (function-call: algebricks:eq, Args:[%0->$$54, %0->$$49])
                                                                  -- HYBRID_HASH_JOIN [$$54][$$49]  |PARTITIONED|
                                                                    exchange 
                                                                    -- HASH_PARTITION_EXCHANGE [$$54]  |PARTITIONED|
                                                                      project ([$$54])
                                                                      -- STREAM_PROJECT  |PARTITIONED|
                                                                        exchange 
                                                                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                          join (function-call: algebricks:eq, Args:[%0->$$58, %0->$$56])
                                                                          -- HYBRID_HASH_JOIN [$$58][$$56]  |PARTITIONED|
                                                                            exchange 
                                                                            -- HASH_PARTITION_EXCHANGE [$$58]  |PARTITIONED|
                                                                              project ([$$58])
                                                                              -- STREAM_PROJECT  |PARTITIONED|
                                                                                select (function-call: algebricks:eq, Args:[%0->$$59, AMERICA])
                                                                                -- STREAM_SELECT  |PARTITIONED|
                                                                                  exchange 
                                                                                  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                                    data-scan [$$59, $$58]<-[$$58, $$59, $$60] <- default.region
                                                                                    -- DATASOURCE_SCAN  |PARTITIONED|
                                                                                      exchange 
                                                                                      -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                                        empty-tuple-source
                                                                                        -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
                                                                            exchange 
                                                                            -- HASH_PARTITION_EXCHANGE [$$56]  |PARTITIONED|
                                                                              project ([$$56, $$54])
                                                                              -- STREAM_PROJECT  |PARTITIONED|
                                                                                exchange 
                                                                                -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                                  replicate 
                                                                                  -- SPLIT  |PARTITIONED|
                                                                                    exchange 
                                                                                    -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                                      data-scan []<-[$$54, $$55, $$56, $$57] <- default.nation
                                                                                      -- DATASOURCE_SCAN  |PARTITIONED|
                                                                                        exchange 
                                                                                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                                          empty-tuple-source
                                                                                          -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
                                                                    exchange 
                                                                    -- HASH_PARTITION_EXCHANGE [$$49]  |PARTITIONED|
                                                                      data-scan [$$49, $$46]<-[$$46, $$47, $$48, $$49, $$50, $$51, $$52, $$53] <- default.customer
                                                                      -- DATASOURCE_SCAN  |PARTITIONED|
                                                                        exchange 
                                                                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                          empty-tuple-source
                                                                          -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
                                                            exchange 
                                                            -- HASH_PARTITION_EXCHANGE [$$38]  |PARTITIONED|
                                                              project ([$$38, $$37, $$41])
                                                              -- STREAM_PROJECT  |PARTITIONED|
                                                                select (function-call: algebricks:and, Args:[function-call: algebricks:ge, Args:[%0->$$41, 1995-01-01], function-call: algebricks:lt, Args:[%0->$$41, 1996-12-31]])
                                                                -- STREAM_SELECT  |PARTITIONED|
                                                                  exchange 
                                                                  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                    data-scan [$$38, $$37, $$41]<-[$$37, $$38, $$39, $$40, $$41, $$42, $$43, $$44, $$45] <- default.orders
                                                                    -- DATASOURCE_SCAN  |PARTITIONED|
                                                                      exchange 
                                                                      -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                        empty-tuple-source
                                                                        -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
                                            exchange 
                                            -- HASH_PARTITION_EXCHANGE [$$12]  |PARTITIONED|
                                              project ([$$12])
                                              -- STREAM_PROJECT  |PARTITIONED|
                                                select (function-call: algebricks:eq, Args:[%0->$$16, ECONOMY ANODIZED STEEL])
                                                -- STREAM_SELECT  |PARTITIONED|
                                                  exchange 
                                                  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                    data-scan [$$16, $$12]<-[$$12, $$13, $$14, $$15, $$16, $$17, $$18, $$19, $$20] <- default.part
                                                    -- DATASOURCE_SCAN  |PARTITIONED|
                                                      exchange 
                                                      -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                        empty-tuple-source
                                                        -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
                                    exchange 
                                    -- HASH_PARTITION_EXCHANGE [$$5]  |PARTITIONED|
                                      data-scan [$$5, $$8]<-[$$5, $$6, $$7, $$8, $$9, $$10, $$11] <- default.supplier
                                      -- DATASOURCE_SCAN  |PARTITIONED|
                                        exchange 
                                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                          empty-tuple-source
                                          -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
                            exchange 
                            -- HASH_PARTITION_EXCHANGE [$$1]  |PARTITIONED|
                              project ([$$1, $$2])
                              -- STREAM_PROJECT  |PARTITIONED|
                                assign [$$1, $$2, $$3, $$4] <- [%0->$$54, %0->$$55, %0->$$56, %0->$$57]
                                -- ASSIGN  |PARTITIONED|
                                  exchange 
                                  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                    replicate 
                                    -- SPLIT  |PARTITIONED|
                                      exchange 
                                      -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                        data-scan []<-[$$54, $$55, $$56, $$57] <- default.nation
                                        -- DATASOURCE_SCAN  |PARTITIONED|
                                          exchange 
                                          -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                            empty-tuple-source
                                            -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
