#include <bits/stdc++.h>
using namespace std;
bool btest = 0;
const int maxn = 10001;
const int INF = (int)1e9;
struct C {
  int a, b;
} a[maxn];
int cmp(const void *a, const void *b) {
  if ((*(C *)a).a == (*(C *)b).a) return ((*(C *)a).b - (*(C *)b).b);
  return ((*(C *)a).a - (*(C *)b).a);
}
int n, m;
int main() {
  ios::sync_with_stdio(0);
  cin >> n;
  int i, j, k;
  for (i = 1; i <= n; i++) {
    cin >> a[i].a >> a[i].b;
  }
  qsort(a + 1, n, sizeof a[0], cmp);
  int ans = 0;
  for (i = 1; i <= n; i++) {
    if (ans <= a[i].b)
      ans = a[i].b;
    else
      ans = a[i].a;
  }
  cout << ans << endl;
  return 0;
}
