As a separate function, this should have asserts about current monitor state to make sure we're not being naughty by mistake.