function burn(address payTo) public {

bool result = mv.verifyTx(
proofs[msg.sender].a,
proofs[msg.sender].a_p,
proofs[msg.sender].b,
proofs[msg.sender].b_p,
proofs[msg.sender].c,
proofs[msg.sender].c_p,
proofs[msg.sender].h,
proofs[msg.sender].k,
msg.sender);




require(result); 

bytes8 C = mv.getInputBits(0, msg.sender);
uint256 value = uint256(C); 
ops.transfer(payTo, value); 
bytes8 Nc = mv.getInputBits(64, msg.sender); 
ns[nCount++] = Nc; 
bytes8 root = merkle(0,0); 
currentRootIndex = roots.push(root)-1; 
}