sources.put( "upper", sourceUpper );
sources.put( "offset", sourceLowerOffset );
Tap sink = getPlatform().getTextFile( getOutputPath( "simplemergethreechaincogroup" ), SinkMode.REPLACE );
Pipe pipeLower = new Each( new Pipe( "lower" ), new Fields( "line" ), new RegexSplitter( new Fields( "num1", "char1" ), " " ) );
Pipe pipeUpper = new Each( new Pipe( "upper" ), new Fields( "line" ), new RegexSplitter( new Fields( "num1", "char1" ), " " ) );
Pipe pipeOffset = new Each( new Pipe( "offset" ), new Fields( "line" ), new RegexSplitter( new Fields( "num2", "char2" ), " " ) );
Pipe splice = new Merge( "merge", pipeLower, pipeUpper );
splice = new CoGroup( splice, new Fields( "num1" ), pipeOffset, new Fields( "num2" ) );