CMPT355 Project 1