#--------------------------------------------------
# There are 1 DAGs in the session
#--------------------------------------------------
#--------------------------------------------------
# TEZ DAG plan: pig-0_scope-1
#--------------------------------------------------
Tez vertex scope-103	->	Tez vertex scope-105,
Tez vertex scope-104	->	Tez vertex scope-105,
Tez vertex scope-105	->	Tez vertex scope-109,
Tez vertex scope-109

Tez vertex scope-103
# Plan on vertex
POValueOutputTez - scope-107	->	 [scope-105]
|
|---a: New For Each(false,false)[bag] - scope-81
    |   |
    |   Cast[int] - scope-76
    |   |
    |   |---Project[bytearray][0] - scope-75
    |   |
    |   Cast[int] - scope-79
    |   |
    |   |---Project[bytearray][1] - scope-78
    |
    |---a: Load(file:///tmp/input:org.apache.pig.builtin.PigStorage) - scope-74
Tez vertex scope-104
# Plan on vertex
POValueOutputTez - scope-108	->	 [scope-105]
|
|---c: New For Each(false,false)[bag] - scope-89
    |   |
    |   Cast[int] - scope-84
    |   |
    |   |---Project[bytearray][1] - scope-83
    |   |
    |   Cast[int] - scope-87
    |   |
    |   |---Project[bytearray][0] - scope-86
    |
    |---b: Load(file:///tmp/input:org.apache.pig.builtin.PigStorage) - scope-82
Tez vertex scope-105
# Plan on vertex
d: Local Rearrange[tuple]{int}(false) - scope-122	->	 scope-109
|   |
|   Project[int][0] - scope-124
|
|---e: New For Each(false,false)[bag] - scope-110
    |   |
    |   Project[int][0] - scope-111
    |   |
    |   POUserFunc(org.apache.pig.builtin.AlgebraicMathBase$Initial)[tuple] - scope-112
    |   |
    |   |---Project[bag][1] - scope-113
    |       |
    |       |---Project[bag][1] - scope-114
    |
    |---Pre Combiner Local Rearrange[tuple]{Unknown} - scope-125
        |
        |---POShuffledValueInputTez - scope-106	<-	 [scope-103, scope-104]
Tez vertex scope-109
# Combine plan on edge <scope-105>
d: Local Rearrange[tuple]{int}(false) - scope-126	->	 scope-109
|   |
|   Project[int][0] - scope-128
|
|---e: New For Each(false,false)[bag] - scope-115
    |   |
    |   Project[int][0] - scope-116
    |   |
    |   POUserFunc(org.apache.pig.builtin.LongSum$Intermediate)[tuple] - scope-117
    |   |
    |   |---Project[bag][1] - scope-118
    |
    |---d: Package(CombinerPackager)[tuple]{int} - scope-121
# Plan on vertex
e: Store(file:///tmp/pigoutput:org.apache.pig.builtin.PigStorage) - scope-102
|
|---e: New For Each(false,false)[bag] - scope-101
    |   |
    |   Project[int][0] - scope-95
    |   |
    |   POUserFunc(org.apache.pig.builtin.LongSum$Final)[long] - scope-99
    |   |
    |   |---Project[bag][1] - scope-119
    |
    |---d: Package(CombinerPackager)[tuple]{int} - scope-92
