integer N,K
integer,allocatable,dimension(:)::a
logical,allocatable,dimension(:)::dp
read*,N,K
allocate(a(N),DP(0:K))
read*,a
DP=.False.
DP(0)=.False.
do i=1,K
  do j=1,N
    if(i-a(j)<0)cycle
    if(.Not.dp(i-a(j)))dp(i)=.True.
  end do
end do

print"(A)",merge(" First","Second",dp(k))

end