from heapq import heappush, heappop if input() == "Alice": N = int(input()) K = N-2 print(K) edge = [list(map(int, input().split())) for _ in range(N-1)] G = [set() for _ in range(N)] for u, v in edge: u, v = u-1, v-1 G[u].add(v) G[v].add(u) que = [] for i in range(N): if len(G[i]) == 1: heappush(que, i) ans = [] for _ in range(N-2): n = heappop(que) v = G[n].pop() ans.append(v+1) G[v].remove(n) if len(G[v]) == 1: heappush(que, v) print(*ans) else: N = int(input()) K = N-2 print(K) A = list(map(int, input().split())) A = [a-1 for a in A] cnt = [0]*N for a in A: cnt[a] += 1 que = [] for i in range(N): if cnt[i] == 0: heappush(que, i) edge = [] for a in A: b = heappop(que) edge.append((a, b)) cnt[a] -= 1 if cnt[a] == 0: heappush(que, a) l = heappop(que) r = heappop(que) edge.append((l, r)) for u, v in edge: print(u+1, v+1)