#include <bits/stdc++.h>
using namespace std;
int N, K;
vector<int> stones, dp;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cin >> N >> K;
  stones.assign(N, 0);
  for (int i = 0; i < N; i++) {
    cin >> stones[i];
  }
  dp.assign(K + 1, 0);
  dp[0] = 0;
  for (int i = 1; i <= K; i++) {
    int canLose = 1;
    for (int x : stones) {
      canLose &= (i - x < 0 ? 0 : dp[i - x]);
    }
    dp[i] = !canLose;
  }
  cout << (dp[K] == 1 ? "First" : "Second") << endl;
  return 0;
}
