#include<bits/stdc++.h>
#define watch(x) cerr << (#x) << " = " << x << endl 

using namespace std;

#ifndef LOCAL
#define cerr false 
#endif 

int main(){
	int n , k ; 
	cin >> n >> k ; 
	int arr[n] ; 
	for(int& i : arr) cin >> i ;

	vector<bool>dp(k+1,false);
	for(int i=0;i<=k;i++){
		for(int stones : arr){
			if( i-stones >= 0 and dp[i-stones] == false){
				dp[i] = true;
			}
			watch(dp[i]);
		}
	}

	cout << ( dp[k]?"First":"Second" ) << endl ;
	return 0;
}
