measurment updates
loop takes iterators