#include <bits/stdc++.h>
using namespace std;
vector<int> a;
int t[100000];
int main() {
  int n, k;
  int i;
  scanf("%d %d", &n, &k);
  for (i = 0; i < k; i++) t[i] = 0;
  int x;
  scanf("%d", &x);
  a.push_back(x - 1);
  for (i = 1; i < n; i++) {
    scanf("%d", &x);
    if (x - 1 != a[a.size() - 1]) a.push_back(x - 1);
  }
  t[a[0]]++;
  t[a[a.size() - 1]]++;
  for (i = 1; i < a.size() - 1; i++) {
    if (a[i - 1] == a[i + 1]) t[a[i]]++;
    t[a[i]]++;
  }
  int max = -1, ans;
  for (i = 0; i < k; i++) {
    if (max < t[i]) {
      ans = i;
      max = t[i];
    }
  }
  printf("%d\n", ans + 1);
  return 0;
}
