CMPT 379 Course Project