other method to compile