#include <bits/stdc++.h>
using namespace std;
const long long N = 105, K = 1e5 + 10;
long long a[N], n, k, dp[K][2], mn = INT64_MAX;
bool solve(long long k, long long turn) {
  if (k < mn) {
    return 0;
  }
  if (dp[k][turn] != -1) {
    return dp[k][turn];
  }
  bool ans = 1;
  for (long long i = 0; i < n; i++) {
    ans = min(ans, solve(k - a[i], 1 - turn));
  }
  return dp[k][turn] = 1 - ans;
}
signed main() {
  ios::sync_with_stdio(false);
  fill(&dp[0][0], &dp[K - 1][1], -1);
  cin >> n >> k;
  for (long long i = 0; i < n; i++) {
    cin >> a[i];
    mn = min(a[i], mn);
  }
  cout << (solve(k, 0) ? "First\n" : "Second\n");
}
