csc 472 project