reiteratively
not defined yet