internal functions with ALL iterations