pub fn prove_bivariate_sumchecks_with_switchover<U, F, DomainField, Transcript, Backend>(
witness: &MultilinearExtensionIndex<'_, U, F>,
constraint_sets: Vec<ConstraintSet<F>>,
transcript: &mut ProverTranscript<Transcript>,
switchover_fn: impl Fn(usize) -> usize + 'static,
domain_factory: impl EvaluationDomainFactory<DomainField>,
backend: &Backend,
) -> Result<Vec<EvalcheckMultilinearClaim<F>>, Error>where
U: UnderlierType + PackScalar<F> + PackScalar<DomainField>,
F: TowerField + ExtensionField<DomainField>,
DomainField: Field,
Transcript: Challenger,
Backend: ComputationBackend,