#!/usr/bin/env python3
import sys, math, itertools, collections, bisect
input = lambda: sys.stdin.buffer.readline().rstrip().decode('utf-8')
inf = float('inf') ;mod = 10**9+7
mans = inf ;ans = 0 ;count = 0 ;pro = 1
sys.setrecursionlimit(10**7)

n,k = map(int,input().split())
A = list(map(int,input().split()))
mina = min(A)
dp=[[-1]*(k+1) for i in range(2)]

def rec(oddeven,left):
  if dp[oddeven][left] != -1: return dp[oddeven][left]
  if left < mina:return (oddeven+1)%2
  for i,ai in enumerate(A):
    if rec((oddeven+1)%2 , left-ai) == oddeven:
      dp[oddeven][left] = oddeven
      return oddeven
  dp[oddeven][left] = (oddeven+1)%2    
  return (oddeven+1)%2

print("Second" if rec(0,k) else "First")