enhance compile script