more _ctx required
add some complexity back to handle 0.9.8 annoyances