CSE 2231 project 3.