reverse_iterate_revised