CS121 Assignment 3