bitwise xor instead of logical not
fix whitespace