def solve(n, x, a): if n == 1 : return x == a[0] prod = 1 for i in range(n): prod *= a[i] + 1 if prod > x + 1 : return False if a[i] == 1 : return True que = {tuple(a)} while len(que) : next = set() finish = False for i in que : if len(i) == 1 : finish = True break if finish : for i in que : if i[0] == x : return True return False for i in que : prod = 1 for j in i : prod *= j + 1 for j, k in enumerate(i) : if j and k == i[j - 1] : continue for l, m in enumerate(i) : if l == j: continue cur = prod // (k + 1) // (m + 1) o = m + 1 while (o * k + m + 1) * cur <= x + 1 : tmp = list(i) tmp[j] = o * k + m tmp.pop(l) tmp.sort() next.add(tuple(tmp)) o += 1 que = next return False n, x = map(int, input().split()) a = list(map(int, input().split())) print("YES" if solve(n, x, a) else "NO")