fielded = new Each( fielded, new Fields( "line" ), new RegexSplitter( "\\s" ) );
// fielded = new Each( fielded, new Debug( true ) );
Pipe inner = new CoGroup( "inner", fielded, new Fields( 0 ), uniques, new Fields( "word" ), new InnerJoin() );
Pipe outer = new CoGroup( "outer", fielded, new Fields( 0 ), uniques, new Fields( "word" ), new OuterJoin() );
Pipe left = new CoGroup( "left", fielded, new Fields( 0 ), uniques, new Fields( "word" ), new LeftJoin() );
Pipe right = new CoGroup( "right", fielded, new Fields( 0 ), uniques, new Fields( "word" ), new RightJoin() );
Pipe[] heads = Pipe.pipes( uniques, fielded );
Map<String, Tap> sources = Cascades.tapsMap( heads, Tap.taps( source, source ) );