Reworking Compiler