#include <bits/stdc++.h>
using namespace std;
template <class X, class Y>
void minimize(X &x, const Y &y) {
  if (x > y) x = y;
}
template <class X, class Y>
void maximize(X &x, const Y &y) {
  if (x < y) x = y;
}
const string win = "Kevin";
const string lose = "Nicky";
map<int, int> gr;
int evenGrundy(int x) {
  if (x < 3) return (x);
  return (x % 2 == 0 ? 1 : 0);
}
int oddGrundy(int x) {
  if (x < 4) return (x % 2 ? 1 : 0);
  if (x % 2 == 1) return (0);
  if (gr.find(x) != gr.end()) return (gr[x]);
  set<int> s;
  s.insert(oddGrundy(x - 1));
  s.insert(oddGrundy(x / 2));
  for (int j = 0, _n = (1000); j < _n; j = j + 1)
    if (s.find(j) == s.end()) return (gr[x] = j);
  assert(false);
}
int main(void) {
  int n, k;
  scanf("%d%d", &n, &k);
  int res = 0;
  for (int love = 0, _n = (n); love < _n; love = love + 1) {
    int x;
    scanf("%d", &x);
    res ^= k % 2 ? oddGrundy(x) : evenGrundy(x);
  }
  cout << (res > 0 ? win : lose) << endl;
  return 0;
}
