Completed preprocessor