#include <bits/stdc++.h>
using namespace std;
const long long INF = 1e7;
const int mxN = 1e5 + 1;
long long n, k;
long long dp[mxN], a[mxN];
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cin >> n >> k;
  for (int i = 1; i <= n; i++) cin >> a[i];
  memset(dp, -1, sizeof(dp));
  dp[0] = 0;
  for (int j = 1; j <= k; j++) {
    for (int i = 1; i <= n; i++) {
      if (j < a[i]) continue;
      if (~dp[j - a[i]]) {
        if (~dp[j])
          dp[j] |= !dp[j - a[i]];
        else
          dp[j] = !dp[j - a[i]];
      }
    }
  }
  int m = *min_element(a + 1, a + n + 1);
  for (int i = k - m + 1; i < k; i++) {
    if (~dp[i]) {
      if (~dp[k])
        dp[k] |= dp[i];
      else
        dp[k] = dp[i];
    }
  }
  cout << (dp[k] ? "First" : "Second") << '\n';
}
