local mmi, mma = math.min, math.max local bxor = bit.bxor local n, x = io.read("*n", "*n") local a = {} local b = {} local c = {} local t = {} for i = 1, n do a[i] = io.read("*n") b[i] = bxor(a[i], x) c[i] = mmi(a[i], b[i]) t[i] = i end table.sort(t, function(x, y) return c[x] < c[y] end) for i = 1, n - 1 do if a[t[i]] >= b[t[i + 1]] then print("No") os.exit() end if b[t[i]] >= a[t[i + 1]] then print("No") os.exit() end end print("Yes")