#include <bits/stdc++.h>
using namespace std;
int N, K, a[110];
bool dp[10100], cek[100100];
bool f(int k) {
  if (k == 0) return 0;
  if (cek[k]) return dp[k];
  dp[k] = 0;
  for (int i = 1; i <= N; i++) {
    if (k - a[i] >= 0) {
      dp[k] |= !f(k - a[i]);
    }
  }
  cek[k] = 1;
  return dp[k];
}
int main() {
  cin >> N >> K;
  for (int i = 1; i <= N; i++) cin >> a[i];
  memset(cek, 0, sizeof(cek));
  if (f(K))
    cout << "First" << endl;
  else
    cout << "Second" << endl;
}
