Assignment 2 for comp136