#include <bits/stdc++.h>
using namespace std;
const int mo = 1e9 + 7;
int trie[555555][26], cnt;
void init() {
  memset(trie, 0, sizeof(trie));
  cnt = 1;
}
void insert(char* s) {
  int cur = 1;
  for (int i = 0; s[i]; i++) {
    if (!trie[cur][s[i] - 'a']) trie[cur][s[i] - 'a'] = ++cnt;
    cur = trie[cur][s[i] - 'a'];
  }
}
char s[555555];
int sg[555555];
int dfs(int x) {
  int ans = 0, h[50], flag = 0;
  memset(h, -1, sizeof(h));
  for (int i = 0; i < 26; i++)
    if (trie[x][i]) h[dfs(trie[x][i])] = 1, flag++;
  int j = 0;
  while (h[j] != -1) j++;
  return sg[x] = j;
}
int df(int x) {
  int ans = 0, h[50], flag = 0;
  memset(h, -1, sizeof(h));
  for (int i = 0; i < 26; i++)
    if (trie[x][i]) h[df(trie[x][i])] = 1, flag++;
  int j = 0;
  while (h[j] != -1) j++;
  if (!flag) j = 1;
  return sg[x] = j;
}
int main() {
  int n, k;
  cin >> n >> k;
  init();
  for (int i = 0; i < n; i++) {
    scanf("%s", s);
    insert(s);
  }
  int ans = dfs(1);
  if (ans == 0)
    puts("Second");
  else {
    int rp = df(1);
    if (ans >= 1 && rp >= 1)
      puts("First");
    else {
      if (k & 1)
        puts("First");
      else
        puts("Second");
    }
  }
  return 0;
}
