modular version of our project