#include <bits/stdc++.h>
using namespace std;
int dp[100005];
bool helper(vector<int> &v, int k, int n) {
  if (k <= 0) {
    return false;
  }
  if (dp[k] != -1) {
    return dp[k];
  }
  bool ans = false;
  for (int i = 0; i < n; i++) {
    if (v[i] == k) {
      return true;
    }
    if (k >= v[i]) {
      ans = ans || !helper(v, k - v[i], n);
    }
  }
  return dp[k] = ans;
}
int main() {
  int n, k;
  cin >> n >> k;
  vector<int> v(n);
  for (int i = 0; i < n; i++) {
    cin >> v[i];
  }
  memset(dp, -1, sizeof(dp));
  if (helper(v, k, n)) {
    cout << "First\n";
  } else {
    cout << "Second\n";
  }
  return 0;
}
