count = [0] * (10 ** 5 + 10)
def main():
N = int(input())
AS = map(int, input().split())
sum = 0
for a in AS:
count[a] += 1
sum += a
Q = int(input())
for q in range(Q):
B, C = map(int, input().split())
sum += (C - B) * count[B]
count[C] += count[B]
count[B] = 0
print(sum)
"""
input
0b00000000000000000000000010100
0b00000000000000000000000001011
0b00000000000000000000000001001
0b00000000000000000000000011000
output
0b00000000000000000000000011010
0b00000000000000000000000000101
0b00000000000000000000000000111
0b00000000000000000000000010110
myanswer
0b00000000000000000000000000000
0b00000000000000000000000011111
0b00000000000000000000000011101
0b00000000000000000000000001100
"""
# for a in AS:
# print(f"{a:#031b}")
r = [0] * N
for i in range(1, N):
r[i] = r[i - 1] ^ AS[i - 1] ^ AS[i]
# for a in r:
# print(f"{a:#031b}")
rest = reduce(xor, r[1:])
d = AS[0] ^ rest
for i in range(N):
r[i] ^= d
print(*r)
# check
# total = reduce(xor, r)
# for i in range(N):
# print(total ^ r[i] == AS[i])
from functools import reduce
from operator import xor
_N = int(input())
AS = list(map(int, input().split()))
total = reduce(xor, AS)
print(*[a ^ total for a in AS])