#include <bits/stdc++.h>
using namespace std;
const int MAX = 100005;
vector<int> A;
int n, k;
int dp[MAX];
int main() {
  cin >> n >> k;
  for (int i = 0; i < MAX; i++) dp[i] = -1;
  A.resize(n);
  for (int i = 0; i < n; i++) cin >> A[i];
  for (int i = 0; i < A[0]; i++) dp[i] = 0;
  for (int i = 0; i < MAX; i++) {
    for (auto a : A) {
      if (i + a >= MAX) break;
      if (dp[i + a] == -1) dp[i + a] = 1 - dp[i];
    }
  }
  string ans;
  if (dp[k] == 1)
    ans = "First";
  else
    ans = "Second";
  cout << ans << endl;
  return 0;
}
