MapReduce(1,GFCross('1')) - -29:
|   Store(DummyFil:DummyLdr) - -3725681661758899536
|   |
|   |---New For Each(false)[tuple] - -1346588723849924960
|       |   |
|       |   POUserFunc(org.apache.pig.impl.builtin.GFCross)[tuple] - -5831184868475101694
|       |   |
|       |   |---Project[tuple][*] - -3845271178065259412
|       |
|       |---Package(Packager)[tuple]{Unknown} - -3851605818031718348
|   Local Rearrange[tuple]{Unknown}(false) - --3658165997714269604
|   |
|   |---Load(file:/tmp/temp-1456742965/tmp774375955:org.apache.pig.impl.io.InterStorage) - -28
|
|---MapReduce(1,AVG) - -26:
    |   Store(file:/tmp/temp-1456742965/tmp774375955:org.apache.pig.impl.io.InterStorage) - -27
    |   |
    |   |---New For Each(false)[tuple] - --696216369324861973
    |       |   |
    |       |   POUserFunc(org.apache.pig.builtin.AVG)[tuple] - -7456418838947193268
    |       |   |
    |       |   |---Project[tuple][*] - -2975419344702132532
    |       |
    |       |---Package(Packager)[tuple]{Unknown} - --368145047166239648
    |   Local Rearrange[tuple]{Unknown}(false) - -6541270116190953413
    |   |
    |   |---Load(file:/tmp/temp-1456742965/tmp-586682361:org.apache.pig.impl.io.InterStorage) - -25
    |
    |---MapReduce(20,SUM,COUNT,TestMRCompiler$WeirdComparator) - -18:
        |   Store(file:/tmp/temp-1456742965/tmp-586682361:org.apache.pig.impl.io.InterStorage) - -24
        |   |
        |   |---New For Each(false,false)[tuple] - -7251706569645724914
        |       |   |
        |       |   POUserFunc(org.apache.pig.builtin.COUNT)[tuple] - --6405280822876279137
        |       |   |
        |       |   |---Project[tuple][*] - -6741648588878535427
        |       |   |
        |       |   POUserFunc(org.apache.pig.builtin.SUM)[tuple] - --8322891634142946616
        |       |   |
        |       |   |---Project[tuple][*] - --7448840386612739853
        |       |
        |       |---New For Each(true)[tuple] - -23
        |           |   |
        |           |   Project[bag][1] - -22
        |           |
        |           |---Package(LitePackager)[tuple]{tuple} - -21
        |   Local Rearrange[tuple]{tuple}(false) - -20
        |   |   |
        |   |   Project[tuple][*] - -19
        |   |
        |   |---Load(file:/tmp/temp-1456742965/tmp2077335416:org.apache.pig.impl.io.InterStorage) - -17
        |
        |---MapReduce(1,TestMRCompiler$WeirdComparator) - -3:
            |   Store(file:/tmp/temp-1456742965/tmp-26634357:org.apache.pig.impl.io.InterStorage) - -16
            |   |
            |   |---New For Each(false)[tuple] - -15
            |       |   |
            |       |   POUserFunc(org.apache.pig.impl.builtin.FindQuantiles)[tuple] - -14
            |       |   |
            |       |   |---Project[tuple][*] - -13
            |       |
            |       |---New For Each(false,false)[tuple] - -12
            |           |   |
            |           |   Constant(20) - -11
            |           |   |
            |           |   POSort[bag](org.apache.pig.test.TestMRCompiler$WeirdComparator) - -6079615556647418436
            |           |   |   |
            |           |   |   Project[tuple][*] - -10
            |           |   |
            |           |   |---Project[bag][1] - -9
            |           |
            |           |---Package(Packager)[tuple]{chararray} - -8
            |   Local Rearrange[tuple]{chararray}(false) - -7
            |   |   |
            |   |   Constant(all) - -6
            |   |
            |   |---New For Each(true)[tuple] - -5
            |       |   |
            |       |   Project[tuple][*] - -4
            |       |
            |       |---Load(file:/tmp/temp-1456742965/tmp2077335416:org.apache.pig.impl.builtin.RandomSampleLoader('org.apache.pig.impl.io.InterStorage','100')) - -2
            |
            |---MapReduce(-1) - -0:
                Reduce Plan Empty
                |   Store(file:/tmp/temp-1456742965/tmp2077335416:org.apache.pig.impl.io.InterStorage) - -1
                |   |
                |   |---Filter[tuple] - --2783416442434419494
                |       |   |
                |       |   Constant(true) - -8219725798912083822
                |       |
                |       |---Load(DummyFil:DummyLdr) - --3889827013424534115
