#include <bits/stdc++.h>
using namespace std;
const long long int INF = 1e12;
long long int dp[100001][2];
long long int dp1[3001][3001][2];
long long int a[3001];
int n;
long long int fun(int k, int t) {
  if (k == 0) return 1 - t;
  if (k < 0) return t;
  if (dp[k][t] != -1) return dp[k][t];
  for (int i = 0; i < n; i++)
    if (a[i] == k) return dp[k][t] = t;
  for (int i = 0; i < n; i++) {
    if (fun(k - a[i], 1 - t) != (1 - t)) return dp[k][t] = t;
  }
  return dp[k][t] = 1 - t;
}
int main() {
  long long int k;
  cin >> n >> k;
  for (int i = 0; i < n; i++) cin >> a[i];
  for (int i = 0; i < 100000; i++) dp[i][0] = dp[i][1] = -1;
  if (fun(k, 0) == 0)
    cout << "First" << endl;
  else
    cout << "Second" << endl;
}
