flattening data, thinking about withStreamingData (which should be renamed, not to confuse wrt stream fusion