add method
Implementation
JubJubFr add(JubJubFr rhs) {
List<BigInt> t = BigintUtils.adc(limbs[0], rhs.limbs[0], BigInt.zero);
BigInt d0 = t[0];
BigInt carry = t[1];
t = BigintUtils.adc(limbs[1], rhs.limbs[1], carry);
BigInt d1 = t[0];
carry = t[1];
t = BigintUtils.adc(limbs[2], rhs.limbs[2], carry);
BigInt d2 = t[0];
carry = t[1];
t = BigintUtils.adc(limbs[3], rhs.limbs[3], carry);
BigInt d3 = t[0];
return JubJubFr([d0, d1, d2, d3]).sub(JubJubFrConst.modulus);
}