added iteration part 1