with loop