#include <bits/stdc++.h>
int a[110];
int dp[101000];
int n;
int win(int k) {
  if (dp[k] != -1) {
    return dp[k];
  } else if (k < a[0]) {
    dp[k] = 1;
    return dp[k];
  } else {
    int check = 0;
    for (int i = 0; i < n; ++i) {
      check = check + win(k - a[i]);
      if (check == 1) {
        break;
      }
    }
    if (check == 0) {
      dp[k] = 1;
      return dp[k];
    } else {
      dp[k] = 0;
      return dp[k];
    }
  }
}
int main(void) {
  int k;
  scanf("%d %d", &n, &k);
  for (int i = 0; i < n; ++i) {
    scanf("%d", &a[i]);
  }
  for (int i = 0; i <= k; ++i) {
    dp[i] = -1;
  }
  int ans = win(k);
  if (ans == 1) {
    printf("Second\n");
  } else {
    printf("First\n");
  }
}
