Add preprocessor functionality