Better preprocessor?