output_description: If Taro will win, print `First`; if Jiro will win, print `Second`.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N K
      a_1 a_2 \ldots a_N
attempt: N, K = map(int, input().split())
  As = list(map(int, input().split()))
  
  # 1  : First
  # -1 : Second
  
  import pdb
  
  tmp = [0 for _ in range(N)]
  tmp_win = [0 for _ in range(N)]
  win = [0 for _ in range(K + 1)]
  
  flg = 0
  
  # pdb.set_trace()
  
  for stones in range(K + 1):
      for i in range(N):
          # 残数stonesの時、先行の操作の結果なり得る残数の場合をすべて求める
          tmp[i] = stones - As[i]
          if tmp[i] == 0:
              # 残数が0になるものがあればその操作を行うことで先行の勝ちが確定
              flg = 1
  
      if flg == 1:
          # 先行の勝ち
          win[stones] = 1
          flg = 0
          continue
  
      if max(tmp) < 0:
          # 残数stonesの時からどの操作を行っても残数が負になる場合は後攻の勝ち
          win[stones] = -1
          continue
  
      # 上記で勝ち負けがわからない場合、
      win[stones] = -1  # 一旦負けで仮置き
      for i in range(N):
          # 次の操作でとりうる個数に対しての勝ち負けを見る
          tmp_win = win[tmp[i]]
          if tmp_win == -1:
              # 次の操作後に残る数で後攻が勝つのであれば、
              # その直前の状態で先行の勝ち筋が存在
              win[stones] = 1
              break
  
  # print(win)
  winner = ["", "First", "Second"]
  print(winner[win[K]])
  # if max(tmp) < min(As):
  #   # 残数stonesの時、
  #   win[stones] = 1:
  #   continue
  
problem_description: Statement
  
  There is a set A = \\{ a_1, a_2, \ldots, a_N \\} consisting of N positive
  integers. Taro and Jiro will play the following game against each other.
  
  Initially, we have a pile consisting of K stones. The two players perform the
  following operation alternately, starting from Taro:
  
    * Choose an element x in A, and remove exactly x stones from the pile.
  
  A player loses when he becomes unable to play. Assuming that both players play
  optimally, determine the winner.
samples: [{"input": "2 4\n    2 3", "output": "First\n    \n\nIf Taro removes three stones, Jiro cannot make a move. Thus, Taro wins.\n\n* * *"}, {"input": "2 5\n    2 3", "output": "Second\n    \n\nWhatever Taro does in his operation, Jiro wins, as follows:\n\n  * If Taro removes two stones, Jiro can remove three stones to make Taro unable to make a move.\n  * If Taro removes three stones, Jiro can remove two stones to make Taro unable to make a move.\n\n* * *"}, {"input": "2 7\n    2 3", "output": "First\n    \n\nTaro should remove two stones. Then, whatever Jiro does in his operation, Taro\nwins, as follows:\n\n  * If Jiro removes two stones, Taro can remove three stones to make Jiro unable to make a move.\n  * If Jiro removes three stones, Taro can remove two stones to make Jiro unable to make a move.\n\n* * *"}, {"input": "3 20\n    1 2 3", "output": "Second\n    \n\n* * *"}, {"input": "3 21\n    1 2 3", "output": "First\n    \n\n* * *"}, {"input": "1 100000\n    1", "output": "Second"}]