refactoring some files so that I can use pre compilers