equalBN
|| !equalBN("A + B", sum, ret)
|| !equalBN("Sum - A", b, ret)
|| !equalBN("Sum - B", a, ret))
|| !equalBN("A + B (r is a)", sum, ret)
|| !equalBN("A + B (r is b)", sum, ret)
|| !equalBN("Sum - A (r is a)", b, ret)
|| !equalBN("Sum - A (r is b)", b, ret)
|| !equalBN("Sum - B (r is a)", a, ret)
|| !equalBN("Sum - B (r is b)", a, ret))
|| !equalBN("A +u B", sum, ret)
|| !equalBN("Sum -u A", b, ret)
|| !equalBN("Sum -u B", a, ret))
|| !equalBN("A +u B (r is a)", sum, ret)
|| !equalBN("A +u B (r is b)", sum, ret)
|| !equalBN("Sum -u A (r is a)", b, ret)
|| !equalBN("Sum -u A (r is b)", b, ret)
|| !equalBN("Sum -u B (r is a)", a, ret)
|| !equalBN("Sum -u B (r is b)", a, ret))
|| !equalBN("A + B (word)", sum, ret)
|| !equalBN("Sum - B (word)", a, ret))
|| !equalBN("A + A", lshift1, ret)
|| !equalBN("A * 2", lshift1, ret)
|| !equalBN("LShift1 / 2", a, ret)
|| !equalBN("LShift1 % 2", zero, remainder)
|| !equalBN("A << 1", lshift1, ret)
|| !equalBN("LShift >> 1", a, ret)
|| !equalBN("LShift >> 1", a, ret))
|| !equalBN("(LShift1 | 1) / 2", a, ret)
|| !equalBN("(LShift | 1) >> 1", a, ret))
|| !equalBN("A << N", lshift, ret)
|| !equalBN("A >> N", a, ret))
|| !equalBN("A >> N", rshift, ret))
|| !equalBN("A >> 1 (rshift1)", rshift, ret))
|| !equalBN("A^2", square, ret)
|| !equalBN("A * A", square, ret)
|| !equalBN("Square / A", a, ret)
|| !equalBN("Square % A", zero, remainder))
|| !equalBN("sqrt(Square)", a, ret))
|| !equalBN("A * B", product, ret)
|| !equalBN("Product / A", b, ret)
|| !equalBN("Product % A", zero, remainder)
|| !equalBN("Product / B", a, ret)
|| !equalBN("Product % B", zero, remainder))
|| !equalBN("A / B", quotient, ret)
|| !equalBN("A % B", remainder, ret2)
|| !equalBN("Quotient * B + Remainder", a, ret))
if (!equalBN("A / B (word)", quotient, ret))
|| !equalBN("A % B (non-negative)", nnmod, ret))
|| !equalBN("A * B (mod M)", mod_mul, ret))
|| !equalBN("A * B (mod M) (mont)", mod_mul, ret))
|| !equalBN("A^2 (mod M)", mod_sqr, ret))
|| !equalBN("A^2 (mod M) (mont)", mod_sqr, ret))
if (!equalBN("swap", a, d)
|| !equalBN("swap", b, c))
|| !equalBN("A ^ E (mod M)", mod_exp, ret))
|| !equalBN("A ^ E (mod M) (mont)", mod_exp, ret)
|| !equalBN("A ^ E (mod M) (mont const", mod_exp, ret))
if (!equalBN("swap with same pointer", a, d))
|| !equalBN("A ^ E", exp, ret))
&& !equalBN("sqrt(A) (mod P)", mod_sqrt, ret))
if (!equalBN("cswap true", a, c)
|| !equalBN("cswap true", b, d))
|| !equalBN("gcd(A,B)", gcd, ret))
if (!equalBN("cswap true", a, c))
if (!equalBN("cswap false", a, c)
|| !equalBN("cswap false", b, d))
if (!equalBN("cswap false", a, c))
if (!equalBN("swap, flags", a, d)
|| !equalBN("swap, flags", b, c)
if (!equalBN("cswap true, flags", a, c)
|| !equalBN("cswap true, flags", b, d)
if (!equalBN("cswap false, flags", a, c)
|| !equalBN("cswap false, flags", b, d)