flexible data flow