#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 5;
int memo[maxn][2], A[105], N, mn = INT_MAX, K;
int solve(int rem, bool x) {
  if (rem < mn) {
    if (x) return 1;
    return 0;
  }
  int &ans = memo[rem][x];
  if (ans != -1) return ans;
  ans = 0;
  int cnt = 0;
  for (int i = 1; i <= N; i++) {
    int aux = solve(rem - A[i], !x);
    if (x) cnt += aux;
    ans |= aux;
  }
  if (x && cnt == N)
    return (ans = 1);
  else if (x)
    return (ans = 0);
  return ans;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cin >> N >> K;
  for (int i = 1; i <= N; i++) {
    cin >> A[i];
    mn = min(mn, A[i]);
  }
  memset(memo, -1, sizeof memo);
  if (solve(K, 0))
    cout << "First";
  else
    cout << "Second";
  return 0;
}
