#include<bits/stdc++.h>
#define MOD (1e9 + 7)
#define fi(i,a,b) for(int i = a; i < b; i++)
#define fd(i,a,b) for(int i = a; i >= b; i--)
#define vfi(v,i) for(auto i = v.begin(); i != v.end(); i++)
#define vfd(v,i) for(auto i = v.rbegin(); i != v.rend(); i++)
#define vi vector<int>
#define pb push_back 

using namespace std;
typedef long long ll;

int main(){
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	ll n,k, mini = 1e5;
	cin>>n>>k;
	ll a[n];
	fi(i,0,n){
		cin>>a[i];
		mini = min(mini, a[i]);
	}

	int dp[k+1] = {0};

	fi(i,0,k+1){

		int flag1 = 0, flag2 = 0;

		if(i < mini){
			dp[i] = 1;
			continue;
		}

		fi(j,0,n){
			if(a[j] == i){
				dp[i] = 0;
				flag1 = 1;
				break;
			}
		}

		if(flag1)
			continue;

		fi(j,0,n){
			if(dp[i-a[j]]){
				flag2 = 1;
				break;
			}

		}

		if(flag2)
			dp[i] = 0;
		else
			dp[i] = 1;

	}

	if(dp[k])
		cout<<"Second\n";
	else
		cout<<"First\n";

	return 0;
}	