#include <bits/stdc++.h>
using namespace std;
const int mx = 1e5 + 10;
int win[mx], lose[mx], trie[mx][26];
int n, k, res = 1;
string s;
void insert() {
  int node = 1;
  for (auto c : s) {
    if (!trie[node][c - 'a']) trie[node][c - 'a'] = ++res;
    node = trie[node][c - 'a'];
  }
}
void search(int val) {
  bool flag = 1;
  for (int i = 0; i < 26; i++) {
    if (trie[val][i]) {
      search(trie[val][i]);
      flag = 0;
      if (!win[trie[val][i]]) win[val] = true;
      if (!lose[trie[val][i]]) lose[val] = true;
    }
  }
  lose[val] |= flag;
}
int main() {
  cin >> n >> k;
  for (int i = 0; i < n; i++) {
    cin >> s;
    insert();
  }
  search(1);
  if (win[1] && lose[1])
    cout << "First" << endl;
  else if (win[1] && k % 2)
    cout << "First" << endl;
  else
    cout << "Second" << endl;
}
