Rework to be a bit simpler, but with more control.