slightly better xor