support key/val map iteration when possible (single iter)