#include<bits/stdc++.h>
using namespace std;
vector<int>v;
int dp[100000+5];
void solve(int k){
    int y = v[upper_bound(v.begin(), v.end(), k)-v.begin()-1];
    if(k-y<v[0]) {cout << "First"; exit(0);}

}
int main(){
    int n, k, x;
    cin >> n >> k;
    for(int i=0; i<n; i++){
        cin >> x;
        v.push_back(x);
    }
    sort(v.begin(), v.end());
    for(int i=1; i<=k; i++){
        for(int j=0; j<v.size(); j++){
                if(i-v[j]<0) break;
            if(dp[i-v[j]]==0) {dp[i] = 1; break;}
        }
    }
    if(dp[k]==1) cout <<  "First";
    else cout << 2
         "Second";
return 0;
}
