#include <bits/stdc++.h>
using namespace std;
vector<long long> a;
long long N, K;
long long dfs(long long i) {
  if (i < 0) return 1;
  if (i < a[0]) return 0;
  long long ret = -1;
  for (long long j = 0, j_len = (N); j < j_len; ++j) {
    ret = max(ret, 1 - dfs(i - a[j]));
  }
  return ret;
}
signed main() {
  cin >> N >> K;
  a.resize(N);
  for (long long i = 0, i_len = (N); i < i_len; ++i) cin >> a[i];
  if (dfs(K))
    cout << "First" << endl;
  else
    cout << "Second" << endl;
}
