get rid of that monstrosity of a consume macro