added xor ^_^