MapModel: changes in method, all using iterator