use iterator, not const_iterator