fewer hacks but more iterations