Cosc 519 term project