first stab at assignment 2