preliminary auto compile