new version of preprocessor