// Code generated by bitwrap synth; hand-maintained for now.
// Source schema: ZKPoll Vote:1.0.0, extension: tally-correctness proof (size 64).

package prover

import "github.com/consensys/gnark/frontend"

// TallyProofCircuit64 is the 64-slot batch variant. Constraint logic is
// shared with TallyProofCircuit16 via tallyProofConstraints; only the
// array sizes differ. See tally_gen.go for the statement being proved.
type TallyProofCircuit64 struct {
	PollID      frontend.Variable                 `gnark:",public"`
	NumReveals  frontend.Variable                 `gnark:",public"`
	Commitments [64]frontend.Variable             `gnark:",public"`
	Nullifiers  [64]frontend.Variable             `gnark:",public"`
	Tallies     [TallyProofMaxChoices]frontend.Variable `gnark:",public"`

	Secrets [64]frontend.Variable
	Choices [64]frontend.Variable
	Active  [64]frontend.Variable
}

func (c *TallyProofCircuit64) Define(api frontend.API) error {
	return tallyProofConstraints(api, c.PollID, c.NumReveals,
		c.Commitments[:], c.Nullifiers[:], c.Tallies[:],
		c.Secrets[:], c.Choices[:], c.Active[:])
}
