#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 25, M = 1e6 + 25, oo = 1e9, mod = 1e9 + 7;
const long long OO = 1e18 + 25;
int n, k, a[125], mem[N][2];
long long dp(int v = k, int turn = 1) {
  if (v < a[0]) return turn * -1;
  int &ret = mem[v][turn];
  if (ret != 0) return ret;
  for (int i = 0; i < n && v >= a[i]; i++) {
    ret = dp(v - a[i], turn * -1);
    if (ret == turn) break;
  }
  return ret;
}
int main() {
  scanf("%d%d", &n, &k);
  for (int i = 0; i < n; i++) scanf("%d", a + i);
  sort(a, a + n);
  printf("%s", (dp() == 1 ? "First" : "Second"));
  return 0;
}
