CIS196 Homework 1