made iterate effectively multimode (untested on actual Nh = 2 though)