#include <bits/stdc++.h>
using namespace std;
const int N = 105;
int n, k, a[N], dp[N];
int dfs(int x) {
  if (~dp[x]) return dp[x];
  bool win = 0;
  for (int i = 1; i <= n; ++i) {
    if (x - a[i] < 0) continue;
    win |= (dfs(x - a[i]) == 0);
  }
  return dp[x] = win;
}
int main() {
  memset(dp, -1, sizeof dp);
  dp[0] = 0;
  scanf("%d%d", &n, &k);
  for (int i = 1; i <= n; ++i) scanf("%d", &a[i]);
  puts(dfs(k) ? "First" : "Second");
  return 0;
}
