correct iterator