adding preprocessor