def main():
N, M = map(int, input().split())
AB = []
for _i in range(M):
A, B = map(int, input().split())
AB.append((A - 1, B - 1))
K = int(input())
CD = []
for _i in range(K):
C, D = map(int, input().split())
CD.append((C - 1, D - 1))
ret = 0
for i in range(2 ** K):
xs = [0] * N
for j in range(K):
cd = CD[j]
if i & 1:
xs[cd[0]] = 1
else:
xs[cd[1]] = 1
i >>= 1
r = 0
for j in range(M):
if xs[AB[j][0]] == xs[AB[j][1]] == 1:
r += 1
ret = max(ret, r)
print(ret)
def main():
N = int(input())
AS = list(map(int, input().split()))
ft = FenwickTree(size=N)
tento = 0
for i in range(N):
tento += ft.sum(N) - ft.sum(AS[i])
ft.add(AS[i], 1)
for i in range(N):
print(tento)
x = AS[i]
tento -= x
tento += (N - 1 - x)