n,k = list(map(int,input().split()))

arr = list(map(int,input().split()))



dp = [False]*(k+1)



for stones in range(k+1):

    for x in arr:

        if stones >= x and dp[stones-x] == False:

            dp[stones] = True



if dp[k]:

    print("First")

else:

    print("Second")

N,K = list(map(int,input().split()))

A = list(map(int,input().split()))



dp = [False]*(K+1)



for i in range(K+1):

    for j in range(N):

        if i-A[j]>=0 and dp[i-A[j]] == False:

            dp[i] = True



        

if dp[K]:

    print("First")

else:

    print("Second")
n, k = list(map(int, input().split()))
arr = list(map(int, input().split()))
dp = [False] * (k + 1)
for stones in range(k + 1):
    for x in arr:
        if stones >= x and dp[stones - x] == False:
            dp[stones] = True
if dp[k]:
    print("First")
else:
    print("Second")

N, K = list(map(int, input().split()))
A = list(map(int, input().split()))
dp = [False] * (K + 1)
for i in range(K + 1):
    for j in range(N):
        if i - A[j] >= 0 and dp[i - A[j]] == False:
            dp[i] = True
if dp[K]:
    print("First")
else:
    print("Second")

-n, k = list(map(int, input().split())) -arr = list(map(int, input().split())) -dp = [False] * (k + 1) -for stones in range(k + 1): -    for x in arr: -        if stones >= x and dp[stones - x] == False: -            dp[stones] = True -if dp[k]: +N, K = list(map(int, input().split())) +A = list(map(int, input().split())) +dp = [False] * (K + 1) +for i in range(K + 1): +    for j in range(N): +        if i - A[j] >= 0 and dp[i - A[j]] == False: +            dp[i] = True +if dp[K]: