#include <bits/stdc++.h>
using ll = long long;
using ull = unsigned long long;
using vi = std::vector<int>;
using vll = std::vector<ll>;
using vull = std::vector<ull>;
using pii = std::pair<int, int>;
using pll = std::pair<ll, ll>;
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
  int n, k;
  cin >> n >> k;
  int a[n];
  for (int i = 0; i < n; ++i) {
    cin >> a[i];
  }
  bool dp[n + 1][k + 1];
  for (int i = 0; i <= n; ++i) {
    dp[i][0] = false;
  }
  for (int i = 0; i <= k; ++i) {
    dp[0][i] = true;
  }
  for (int i = 1; i <= n; ++i) {
    for (int j = 1; j <= k; ++j) {
      dp[i][j] = false;
      if (a[i - 1] <= j) {
        dp[i][j] = dp[i][j] || !dp[i - 1][j - a[i - 1]];
      }
    }
  }
  cout << ((dp[n][k]) ? "First" : "Second") << endl;
}
