#--------------------------------------------------
# There are 1 DAGs in the session
#--------------------------------------------------
#--------------------------------------------------
# TEZ DAG plan: pig-0_scope-0
#--------------------------------------------------
Tez vertex scope-18	->	Tez vertex scope-19,
Tez vertex scope-19

Tez vertex scope-18
# Plan on vertex
b: Local Rearrange[tuple]{int}(false) - scope-32	->	 scope-19
|   |
|   Project[int][0] - scope-34
|
|---c: New For Each(false,false)[bag] - scope-21
    |   |
    |   Project[int][0] - scope-22
    |   |
    |   POUserFunc(org.apache.pig.builtin.Distinct$Initial)[tuple] - scope-23
    |   |
    |   |---Project[tuple][1] - scope-24
    |
    |---Pre Combiner Local Rearrange[tuple]{Unknown} - scope-35
        |
        |---a: New For Each(false,false)[bag] - scope-7
            |   |
            |   Cast[int] - scope-2
            |   |
            |   |---Project[bytearray][0] - scope-1
            |   |
            |   Cast[int] - scope-5
            |   |
            |   |---Project[bytearray][1] - scope-4
            |
            |---a: Load(file:///tmp/input:org.apache.pig.builtin.PigStorage) - scope-0
Tez vertex scope-19
# Combine plan on edge <scope-18>
b: Local Rearrange[tuple]{int}(false) - scope-36	->	 scope-19
|   |
|   Project[int][0] - scope-38
|
|---c: New For Each(false,false)[bag] - scope-25
    |   |
    |   Project[int][0] - scope-26
    |   |
    |   POUserFunc(org.apache.pig.builtin.Distinct$Intermediate)[tuple] - scope-27
    |   |
    |   |---Project[bag][1] - scope-28
    |
    |---b: Package(CombinerPackager)[tuple]{int} - scope-31
# Plan on vertex
c: Store(file:///tmp/pigoutput:org.apache.pig.builtin.PigStorage) - scope-17
|
|---c: New For Each(false)[bag] - scope-16
    |   |
    |   POUserFunc(org.apache.pig.builtin.COUNT)[long] - scope-13
    |   |
    |   |---POUserFunc(org.apache.pig.builtin.Distinct$Final)[bag] - scope-20
    |       |
    |       |---Project[bag][1] - scope-29
    |
    |---b: Package(CombinerPackager)[tuple]{int} - scope-9
