#include <bits/stdc++.h>
using namespace std;
struct exam {
  int a;
  int b;
  friend bool operator<(const exam &a, const exam &b) {
    if (a.a != b.a)
      return a.a < b.a;
    else
      return a.b < b.b;
  }
  void read() { scanf("%d%d", &a, &b); }
};
exam a[5005];
int main() {
  int n;
  int i;
  scanf("%d", &n);
  for (i = 0; i < n; i++) {
    a[i].read();
  }
  sort(a, a + n);
  int maxes = 0;
  for (i = 0; i < n; i++) {
    if (a[i].b >= maxes) {
      maxes = a[i].b;
      continue;
    } else {
      maxes = a[i].a;
      continue;
    }
  }
  printf("%d\n", maxes);
  return 0;
}
