New compile method