assignment 4, cmpt 130