(x xor y) and (a and b) or (x and y) and (a xor b) truth table