This is pretty terrible, but much worse is that, afaict, we can't statically check we get it right.