CIT597 final project