Class project for the CSE 219 course in Stony Brook University