!! re-structure project