## Introduction

Consider the following program transformation.

For an #include directive found in a source code file, comment it out, attempt to rebuild the project. If the rebuild fails, return the commented line back; otherwise keep it commented.

Given the complexity of C/C++ languages and their preprocessors (arguably being Turing-complete …