add or, xor