Moved compiler to sub