CS111 project 2