#include <bits/stdc++.h>
using namespace std;
int n, m;
int c[100005];
set<int> s[100005];
set<int> colors;
int main() {
  scanf("%d%d", &n, &m);
  for (int i = 0; i < n; i++) {
    scanf("%d", &c[i]);
    colors.insert(c[i]);
  }
  for (int i = 0; i < m; i++) {
    int v1, v2;
    scanf("%d%d", &v1, &v2);
    v1--;
    v2--;
    if (c[v1] != c[v2]) {
      s[c[v1]].insert(c[v2]);
      s[c[v2]].insert(c[v1]);
    }
  }
  int max_diversity = -1;
  int res = 0;
  for (auto it = colors.begin(); it != colors.end(); it++) {
    if ((int)s[*it].size() > max_diversity) {
      max_diversity = s[*it].size();
      res = *it;
    }
  }
  cout << res << endl;
  return 0;
}
