### Question:
OpBehaviorBoolNegate extends UnaryOpBehavior { @Override public long evaluateUnary(int sizeout, int sizein, long in1) { long res = in1 ^ 1; return res; } OpBehaviorBoolNegate(); @Override long evaluateUnary(int sizeout, int sizein, long in1); @Override BigInteger evaluateUnary(int sizeout, int sizein, BigInteger in1);  }### Answer:
@Test public void testEvaluateBinaryLong() { OpBehaviorBoolNegate op = new OpBehaviorBoolNegate(); Assert.assertEquals(1, op.evaluateUnary(1, 1, 0)); Assert.assertEquals(0, op.evaluateUnary(1, 1, 1)); }
@Test public void testEvaluateBinaryBigInteger() { OpBehaviorBoolNegate op = new OpBehaviorBoolNegate(); Assert.assertEquals(BigInteger.ONE, op.evaluateUnary(1, 1, BigInteger.ZERO)); Assert.assertEquals(BigInteger.ZERO, op.evaluateUnary(1, 1, BigInteger.ONE)); }