original assignment
hw2 checkpoint