preprocessor module initial version