completed Assignment 1, meets example output