static_assert that enough handlers are given to Si::visit