include "./poseidon_constants.circom"; template Sigma() { signal input in; signal output out; signal in2; signal in4; in2 <== in*in; in4 <== in2*in2; out <== in4*in; } template Ark(t, C, r) { signal input in[t]; signal output out[t]; for (var i=0; i= nRoundsP + nRoundsF/2) { k = i < nRoundsF/2 ? i : i - nRoundsP; mix[i] = Mix(t, M); for (var j=0; j