range: use the iterator typedef to refer to the iterator typename