# Ai^Aj=Xということは、Ai=Aj^X # Counter # X==0 and or Ai==0のときは別対応必要なのか? N, X = map(int, input().split()) A = [] for i in range(N): A.append(int(input())) from collections import Counter counted = Counter(A) ans = 0 for i in range(N): xa = X^A[i] calc = counted[xa] ans += calc ans //= 2 #双方から数えているのでダブルカウントしている print(ans)