from collections import defaultdict def bitSearch(N, P): dic = defaultdict(list) for bit in range(1<>= 1 dic[S].append(Set) return dic N,S = map(int,input().split()) LN = N // 2 RN = N - LN L = [int(input()) for _ in range(LN)] R = [int(input()) for _ in range(RN)] Ldic = bitSearch(LN, L) Rdic = bitSearch(RN, R) ans = [] for Lkey in Ldic.keys(): if Rdic[S-Lkey]: Rkey = S - Lkey for x in Ldic[Lkey]: for y in Rdic[Rkey]: Set = list(x) for k in y: Set.append(k+LN) ans.append(Set) ans.sort() for x in ans: print(*x)