ProgAssignment 2