#include <bits/stdc++.h>
const int N = 101000, M = 26;
int ch[N][M], sz, n, k;
char s[N];
int id(char c) { return c - 'a'; }
void insert(const char* s) {
  int u = 0, l = strlen(s);
  for (int i = 0; i < l; u = ch[u][id(s[i++])])
    if (!ch[u][id(s[i])]) ch[u][id(s[i])] = ++sz;
}
int dfs(int x) {
  int flag = 1, ans = 0;
  for (int i = 0; i < M; i++)
    if (ch[x][i]) {
      flag = 0;
      ans |= dfs(ch[x][i]) ^ 3;
    }
  if (flag) ans = 1;
  return ans;
}
int main() {
  scanf("%d%d", &n, &k);
  for (int i = 0; i < n; i++) {
    scanf("%s", s);
    insert(s);
  }
  int t = dfs(0);
  printf("%s\n", ((t == 3) || ((t > 1) && (k & 1))) ? "First" : "Second");
  return 0;
}
