diy part 3 - compile