input data flow