complete the multithread and project structure