iteration update