#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
    
    ll n,k,i,j;
    vector<ll> v;
    cin>>n>>k;
    for(i=0;i<n;i++){
        cin>>j;
        v.push_back(j);
    }
    bool dp[n][k+1] ={ {false} };
    for(i=0;i<n;i++){
        for(j=0;j<=k;j++){
            if(i==0){
                if(j<v[i])
                dp[i][j]=false;
                else if(dp[i][j-v[i]]==true)
                dp[i][j]=false;
                else
                dp[i][j]=true;
            }
            else{
                if(dp[i-1][j] == true)
                dp[i][j]=true;
                else{
                    if(j<v[i])
                    dp[i][j]=false;
                    else if(dp[i][j-v[i]]==false)
                    dp[i][j]=true;
                    else
                    dp[i][j]=false;
                    
                }
            }
        }
        
    }
    
    if(dp[n-1][k]==false)
    cout<<"Second"<<endl;
    else
    cout<<"First"<<endl;
    return 0;
}