iteration for cain classes