add iterator as configuratble
rename