ripping out some of the cruft from romans
reasonably good convergence