cahpter 4 + added complete code to end of chapt 3