#include <bits/stdc++.h>
using namespace std;
long long int arr[110];
long long int n, k, mini = INT_MAX;
long long int winner(long long int i, long long int k) {
  long long int dp[3][k + 1];
  dp[1][0] = 2;
  dp[2][0] = 1;
  for (long long int j = 1; j <= k; j++) {
    for (long long int i = 1; i <= 2; i++) {
      if (i == 1)
        dp[i][j] = 2;
      else
        dp[i][j] = 1;
      for (int m = 1; m <= n; m++) {
        if (i == 1) {
          if (j - arr[m] >= 0) {
            dp[i][j] = dp[2][j - arr[m]];
            if (dp[i][j] == 1) break;
          } else
            dp[i][j] = 2;
        }
        if (i == 2) {
          if (j - arr[m] >= 0) {
            dp[i][j] = dp[1][j - arr[m]];
            if (dp[i][j] == 2) break;
          } else
            dp[i][j] = 1;
        }
      }
    }
  }
  for (int i = 1; i <= 2; i++) {
    for (int j = 1; j <= k; j++) cout << dp[i][j] << " ";
    cout << endl;
  }
  return dp[1][k];
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  cin >> n >> k;
  for (long long int i = 1; i <= n; i++) {
    cin >> arr[i];
    mini = min(arr[i], mini);
  }
  long long int a;
  if (n == 1) {
    a = k / arr[1];
    if (a % 2 == 0)
      cout << "Second";
    else
      cout << "First";
  } else {
    a = winner(1, k);
    if (a == 1)
      cout << "First";
    else
      cout << "Second";
  }
}
