rebuild the struct of project, add libary function.