#--------------------------------------------------
# There are 1 DAGs in the session
#--------------------------------------------------
#--------------------------------------------------
# TEZ DAG plan: pig-0_scope-0
#--------------------------------------------------
Tez vertex scope-55	->	Tez vertex scope-57,
Tez vertex scope-56	->	Tez vertex scope-57,
Tez vertex scope-61	->	Tez vertex scope-57,Tez vertex scope-65,
Tez vertex scope-65	->	Tez vertex scope-57,
Tez vertex scope-57

Tez vertex scope-55
# Plan on vertex
POValueOutputTez - scope-59	->	 [scope-57]
|
|---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/input1:org.apache.pig.builtin.PigStorage) - scope-0
Tez vertex scope-56
# Plan on vertex
POValueOutputTez - scope-60	->	 [scope-57]
|
|---b: New For Each(false,false)[bag] - scope-15
    |   |
    |   Cast[int] - scope-10
    |   |
    |   |---Project[bytearray][0] - scope-9
    |   |
    |   Cast[int] - scope-13
    |   |
    |   |---Project[bytearray][1] - scope-12
    |
    |---b: Load(file:///tmp/input2:org.apache.pig.builtin.PigStorage) - scope-8
Tez vertex scope-61
# Plan on vertex
c: Split - scope-67
|   |
|   Local Rearrange[tuple]{int}(false) - scope-37	->	 scope-57
|   |   |
|   |   Project[int][0] - scope-33
|   |
|   |---e: Filter[bag] - scope-28
|       |   |
|       |   Less Than[boolean] - scope-31
|       |   |
|       |   |---Project[int][1] - scope-29
|       |   |
|       |   |---Constant(2) - scope-30
|   |
|   POValueOutputTez - scope-62	->	 [scope-65]
|
|---c: New For Each(false,false)[bag] - scope-24
    |   |
    |   Cast[int] - scope-19
    |   |
    |   |---Project[bytearray][0] - scope-18
    |   |
    |   Cast[int] - scope-22
    |   |
    |   |---Project[bytearray][1] - scope-21
    |
    |---c: Load(file:///tmp/input3:org.apache.pig.builtin.PigStorage) - scope-17
Tez vertex scope-65
# Plan on vertex
Local Rearrange[tuple]{int}(false) - scope-51	->	 scope-57
|   |
|   Project[int][0] - scope-47
|
|---f: Filter[bag] - scope-42
    |   |
    |   Greater Than[boolean] - scope-45
    |   |
    |   |---Project[int][1] - scope-43
    |   |
    |   |---Constant(5) - scope-44
    |
    |---POValueInputTez - scope-66	<-	 scope-61
Tez vertex scope-57
# Plan on vertex
h: Store(file:///tmp/pigoutput:org.apache.pig.builtin.PigStorage) - scope-54
|
|---h: FRJoin[tuple] - scope-48	<-	 scope-65
    |   |
    |   Project[int][0] - scope-46
    |   |
    |   Project[int][0] - scope-47
    |
    |---g: FRJoin[tuple] - scope-34	<-	 scope-61
        |   |
        |   Project[int][0] - scope-32
        |   |
        |   Project[int][0] - scope-33
        |
        |---POShuffledValueInputTez - scope-58	<-	 [scope-55, scope-56]
