Adding first pass at problem 3