redefining preprocessor