Assignment 2 for MTM 4086