Homework #2 (except 2nd task)