import sys

readline = sys.stdin.buffer.readline

def even(n): return 1 if n%2==0 else 0

"""

全員が自分以外の全員のxorを把握しているので、全員の値を求めよ

nは偶数



桁ごとに独立に考える。

テストケースで検証すると、

その桁において1の数が偶数個の場合は、自分自身の桁の数字を入れる

奇数個の場合は、自分自身の桁の値をbit反転したものを入れる

ことが正解であることが分かる。

これを実装するだけ。

"""

n = int(readline())

lst1 = list(map(int,readline().split()))

res = 0

for i in lst1:

    res = res^i

ans = []

for i in lst1:

    ans.append(res^i)

print((*ans))
import sys

readline = sys.stdin.buffer.readline

def even(n): return 1 if n%2==0 else 0

n = int(readline())

lst1 = list(map(int,readline().split()))

res = 0

for i in lst1:

    res = res^i

ans = []

for i in lst1:

    ans.append(res^i)

print((*ans))
import sys

readline = sys.stdin.buffer.readline


def even(n):
    return 1 if n % 2 == 0 else 0


"""
全員が自分以外の全員のxorを把握しているので、全員の値を求めよ
nは偶数
桁ごとに独立に考える。
テストケースで検証すると、
その桁において1の数が偶数個の場合は、自分自身の桁の数字を入れる
奇数個の場合は、自分自身の桁の値をbit反転したものを入れる
ことが正解であることが分かる。
これを実装するだけ。
"""
n = int(readline())
lst1 = list(map(int, readline().split()))
res = 0
for i in lst1:
    res = res ^ i
ans = []
for i in lst1:
    ans.append(res ^ i)
print((*ans))

import sys

readline = sys.stdin.buffer.readline


def even(n):
    return 1 if n % 2 == 0 else 0


n = int(readline())
lst1 = list(map(int, readline().split()))
res = 0
for i in lst1:
    res = res ^ i
ans = []
for i in lst1:
    ans.append(res ^ i)
print((*ans))

-""" -全員が自分以外の全員のxorを把握しているので、全員の値を求めよ -nは偶数 -桁ごとに独立に考える。 -テストケースで検証すると、 -その桁において1の数が偶数個の場合は、自分自身の桁の数字を入れる -奇数個の場合は、自分自身の桁の値をbit反転したものを入れる -ことが正解であることが分かる。 -これを実装するだけ。 -"""