22 proof.insert(proof.end(), hiding_oink_proof.begin(), hiding_oink_proof.end());
23 proof.insert(proof.end(), merge_proof.begin(), merge_proof.end());
24 proof.insert(proof.end(), eccvm_proof.begin(), eccvm_proof.end());
25 proof.insert(proof.end(), ipa_proof.begin(), ipa_proof.end());
26 proof.insert(proof.end(), joint_proof.begin(), joint_proof.end());
39 constexpr size_t merge_size = MERGE_PROOF_SIZE;
41 constexpr size_t ipa_size = IPA_PROOF_LENGTH;
42 constexpr size_t joint_size = JOINT_PROOF_LENGTH;
46 constexpr size_t fixed_total = merge_size + eccvm_size + ipa_size + joint_size;
47 if (fields.size() < fixed_total) {
48 throw_or_abort(
"ChonkProof::from_field_elements: proof too short");
50 const size_t mega_zk_oink_length = fields.size() - fixed_total;
52 auto it = fields.begin();
67 HonkProof joint_proof_out(it, fields.end());