#include <bits/stdc++.h>
using namespace std;
struct node {
  int l, r, k;
} emmm[300005];
;
int cmp(node a, node b);
int main() {
  int n;
  while (cin >> n) {
    for (int i = 0; i < n; i++) {
      scanf("%d %d", &emmm[i].l, &emmm[i].r);
      emmm[i].k = i + 1;
    }
    sort(emmm, emmm + n, cmp);
    int aa1 = -1, aa2 = -1;
    for (int i = 1; i < n; i++) {
      if (emmm[i - 1].l >= emmm[i].l && emmm[i - 1].r <= emmm[i].r) {
        aa1 = emmm[i - 1].k;
        aa2 = emmm[i].k;
        break;
      }
    }
    printf("%d %d\n", aa1, aa2);
  }
}
int cmp(node a, node b) {
  if (a.r == b.r) {
    return a.l > b.l;
  }
  return a.r < b.r;
}
