Move to preprocessor