CS603 Final project