#include<iostream>
#include<vector>
#include<algorithm>
#include<cmath>
#include<iomanip>
#include<string>
using namespace std;

int modd=1e9+7;

int main(){
  int n,k; cin>>n>>k;
  int ans[k+1];
  for(int i=0; i<=k; i++){
    ans[i]=0;
  }
  int arr[n];
  for(int i=0; i<n; i++) cin>>arr[i];

  int key;
  for(int i=1; i<n; i++){
    key=arr[i];
    for(int j=i-1; j>=0; j--){
        if(arr[j]>arr[j+1]) arr[j+1]=arr[j];
        else { arr[j+1]=key; break; }
    }
  }

  int r;
  for(int i=1; i<=n; i++){
    r=arr[i-1];
    ans[r]=1;
    for(int j=r+1; j<=k; j++){
        if(ans[j-r]==0) ans[j]=1;
        ans[j]=0;
    }
  }

  if(ans[k]==1) cout<<"First"<<endl;
  else cout<<"Second"<<endl;
}
#include<iostream>
#include<vector>
#include<algorithm>
#include<cmath>
#include<iomanip>
#include<string>
using namespace std;

int modd=1e9+7;

int main(){
  int n,k; cin>>n>>k;
  int ans[k+1];
  for(int i=0; i<=k; i++){
    ans[i]=0;
  }
  int arr[n];
  for(int i=0; i<n; i++) cin>>arr[i];

  int key;
  for(int i=1; i<n; i++){
    key=arr[i]; int j=i-1;
    for( ; j>=0; j--){
        if(arr[j]>arr[j+1]) arr[j+1]=arr[j];
        else {  break; }
    }
    arr[j+1]=key;
  }

  int r;
  for(int i=1; i<=n; i++){
    r=arr[i-1];
    ans[r]=1;
    for(int j=r+1; j<=k; j++){
        if(ans[j-r]==0) ans[j]=1;
        ans[j]=0;
    }
  }

  if(ans[k]==1) cout<<"First"<<endl;
  else cout<<"Second"<<endl;
}
