#include <bits/stdc++.h>
using namespace std;
const int maxn = 10 + 1e2;
const int maxk = 10 + 1e5;
int n, m, a[maxn], dp[maxn];
int main() {
  cin >> n >> m;
  for (int i = 0; i < n; i++) cin >> a[i];
  dp[0] = 2;
  for (int i = 1; i <= m; i++) {
    bool b = false, k = false;
    for (int j = 0; j < n; j++) {
      if (i - a[j] >= 0 and (dp[i - a[j]] == 2 or dp[i - a[j]] == 0)) {
        b = true;
        break;
      }
      if (i - a[j] >= 0) k = true;
    }
    if (b == true) {
      dp[i] = 1;
    } else if (k == true)
      dp[i] = 2;
  }
  if (dp[m] == 0 or dp[m] == 2)
    cout << "Second";
  else
    cout << "First";
}
