#include <bits/stdc++.h>
using namespace std;
int dp[100005];
bool rec(int k, int arr[], int mini, int n) {
  if (k < mini) return 0;
  if (dp[k] != -1) return dp[k];
  int aand = 1;
  for (int i = 1; i <= n; i++) {
    if (k - arr[i] >= 0) {
      aand = ((aand) && (!rec(k - arr[i], arr, mini, n)));
    }
  }
  return dp[k] = aand;
}
int main() {
  int n, k, i, mini;
  mini = INT_MAX;
  cin >> n >> k;
  int arr[n + 1];
  for (i = 1; i <= n; i++) {
    cin >> arr[i];
    mini = min(mini, arr[i]);
  }
  for (i = 0; i <= k; i++) {
    dp[i] = -1;
  }
  int ans = rec(k, arr, mini, n);
  if (dp[k]) {
    cout << "First\n";
  } else {
    cout << "Second\n";
  }
  return 0;
}
