#include<cstdio>
using namespace std;

int n, k ;
int dp[N][2] ;
int a[N] ;

bool dfs(int k, int t) {
	if (dp[k][t] >= 0) return dp[k][t] ;
	int ans = 0 ;
	for (int i = 1; i <= n; i++) if (k >= a[i]) ans |= !dfs(k - a[i], !t) ;
	return dp[k][t] = ans ;
}

signed main() {
	memset(dp, -1, sizeof(dp)) ;
	scanf("%d%d", &n, &k) ;
	for (int i = 1; i <= n; i++) scanf("%d", &a[i]) ;
	if (dfs(k, 0) == true) puts("First") ;
	else puts("Second") ;
}
