Lecture 12 - Design Methods and Iterators