update iterator