Input data and preprocessing