Assignment 3 by Henry Hong Zeng