CMPE297 project