make the program modular