filled in proj1_main