compsci 230 assignment 3