#include <bits/stdc++.h>
using namespace std;
const int sa = 101;
const int sb = 1e5 + 1;
bool dp[101][sb];
bool solve(vector<int>& picks, int n, int stone) {
  for (int i = 1; i <= n; ++i) {
    for (int j = 1; j <= stone; ++j) {
      bool option1 = dp[i - 1][j];
      bool option2 = false;
      if (j >= picks[i]) option2 = !dp[i][j - picks[i]];
      dp[i][j] = option1 or option2;
    }
  }
  return dp[n][stone];
}
int main() {
  int n = 0;
  cin >> n;
  int stone = 0;
  cin >> stone;
  for (int i = 0; i < sa; ++i)
    for (int j = 0; j < sb; ++j) dp[i][j] = false;
  vector<int> picks(n + 1, 0);
  for (int i = 1; i <= n; ++i) cin >> picks[i];
  bool ans = solve(picks, n, stone);
  if (ans)
    cout << "First\n";
  else
    cout << "Second\n";
  return 0;
}
