pre-processing