#include <bits/stdc++.h>
using namespace std;
const int limit = 1e5 + 1;
const int inf = 1e7;
int m[100][limit];
int w[100];
int W;
int n;
void dp(int W, int i) {
  for (int i = 0; i < n; i++) {
    for (int j = 0; j <= W; j++) {
      if (i) {
        if (j < w[i]) {
          m[i][j] = m[i - 1][j];
        } else {
          m[i][j] = m[i - 1][j] || !m[i][j - w[i]];
        }
      } else {
        if (j >= w[i]) {
          m[i][j] = !m[i][j - w[i]];
        } else {
          m[i][j] = 0;
        }
      }
    }
  }
}
int main() {
  cin >> n >> W;
  for (int i = 0; i < n; i++) {
    cin >> w[i];
  }
  dp(W, 0);
  if (m[n - 1][W]) {
    cout << "First" << endl;
  } else {
    cout << "Second" << endl;
  }
  return 0;
}
