#include <bits/stdc++.h>
using namespace std;
int max(int a, int b) { return a > b ? a : b; }
int min(int a, int b) { return a < b ? a : b; }
int main() {
  int i, j, k, n;
  int minn = INT_MAX;
  int maxx = INT_MIN;
  cin >> n >> k;
  int dp[k + 1];
  int arr[n];
  for (i = 0; i < n; i++) {
    cin >> arr[i];
    minn = min(minn, arr[i]);
    maxx = max(maxx, arr[i]);
  }
  for (i = 0; i <= k; i++) {
    dp[i] = 1;
  }
  for (i = minn; i <= maxx; i++) {
    dp[i] = 0;
  }
  for (i = maxx + 1; i <= k; i++) {
    for (j = 0; j < n; j++) {
      if (dp[i - arr[j]] == 1) {
        dp[i] = 0;
        break;
      }
    }
  }
  if (dp[k] == 0) {
    cout << "First";
  } else {
    cout << "Second";
  }
}
