#include <bits/stdc++.h>
using namespace std;
int t, n, k, c, j, tot, i, ye[100100], win[100100], lose[100100], b[100100][26];
char s[100100];
void dfs(int w) {
  int i, z = 0;
  for (i = 0; i < 26; i++)
    if (b[w][i]) {
      dfs(b[w][i]);
      z = 1;
    }
  if (!z) {
    win[w] = 0;
    lose[w] = 1;
    return;
  } else
    for (i = 0; i < 26; i++)
      if (b[w][i]) {
        if (!win[b[w][i]]) win[w] = 1;
        if (!lose[b[w][i]]) lose[w] = 1;
      }
}
int main() {
  scanf("%d%d", &n, &k);
  tot = 0;
  for (i = 1; i <= n; i++) {
    scanf("%s", s + 1);
    t = 0;
    for (j = 1; j <= strlen(s + 1); j++) {
      c = s[j] - 'a';
      if (!b[t][c]) b[t][c] = ++tot;
      t = b[t][c];
    }
  }
  dfs(0);
  if (!win[0])
    printf("Second\n");
  else {
    if (lose[0])
      printf("First\n");
    else if (k & 1)
      printf("First\n");
    else
      printf("Second\n");
  }
  return 0;
}
