Assignment 3 for CS 188