#include <iostream>
#include <vector>
 
using namespace std;
 
vector<pair<int, int>> tr;
vector<int> A;
 
void build(int v, int l, int r) {
    if (r - l == 1) {
        tr[v].first = A[l];
        tr[v].second = l + 1;
        return;
    }
    int m = (l + r) / 2;
    build(2 * v + 1, l, m);
    build(2 * v + 2, m, r);
    tr[v] = max(tr[2 * v + 1], tr[2 * v + 2]);
}
 
pair<int, int> query(int v, int l, int r, int ql, int qr) {
    if (ql == l && qr == r) {
        return tr[v];
    }
    if (qr <= ql) {
        return make_pair(-1e9, -1);
    }
    int m = (l + r) / 2;
    pair<int, int> left = query(2 * v + 1, l, m, ql, min(m, qr));
    pair<int, int> right = query(2 * v + 2, m, r, max(m, ql), qr);
    return max(left, right);
}
 
void update(int v, int l, int r, int pos) {
    if (r - l == 1) {
        tr[v].first = A[l];
        return;
    }
    int m = (l + r) / 2;
    if (pos < m) {
        update(2 * v + 1, l, m, pos);
    } else {
        update(2 * v + 2, m, r, pos);
    }
    tr[v] = max(tr[2 * v + 1], tr[2 * v + 2]);
}
 
int main()
{
    int n;
    cin >> n;
    A.resize(n);
    for (int i = 0; i < n; ++i)
        cin >> A[i];
    tr.resize(4*n);
    build(0, 0, n);
    int k;
    cin >> k;
    while (k --> 0) {
        int l, r;
        cin >> l >> r;
        l--;
        pair<int, int> ans = query(0, 0, n, l, r);
        cout << ans.first << " " << ans.second << "\n";
    }
    return 0;
}
 
				I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnZlY3RvcjxwYWlyPGludCwgaW50Pj4gdHI7CnZlY3RvcjxpbnQ+IEE7Cgp2b2lkIGJ1aWxkKGludCB2LCBpbnQgbCwgaW50IHIpIHsKICAgIGlmIChyIC0gbCA9PSAxKSB7CiAgICAgICAgdHJbdl0uZmlyc3QgPSBBW2xdOwogICAgICAgIHRyW3ZdLnNlY29uZCA9IGwgKyAxOwogICAgICAgIHJldHVybjsKICAgIH0KICAgIGludCBtID0gKGwgKyByKSAvIDI7CiAgICBidWlsZCgyICogdiArIDEsIGwsIG0pOwogICAgYnVpbGQoMiAqIHYgKyAyLCBtLCByKTsKICAgIHRyW3ZdID0gbWF4KHRyWzIgKiB2ICsgMV0sIHRyWzIgKiB2ICsgMl0pOwp9CgpwYWlyPGludCwgaW50PiBxdWVyeShpbnQgdiwgaW50IGwsIGludCByLCBpbnQgcWwsIGludCBxcikgewogICAgaWYgKHFsID09IGwgJiYgcXIgPT0gcikgewogICAgICAgIHJldHVybiB0clt2XTsKICAgIH0KICAgIGlmIChxciA8PSBxbCkgewogICAgICAgIHJldHVybiBtYWtlX3BhaXIoLTFlOSwgLTEpOwogICAgfQogICAgaW50IG0gPSAobCArIHIpIC8gMjsKICAgIHBhaXI8aW50LCBpbnQ+IGxlZnQgPSBxdWVyeSgyICogdiArIDEsIGwsIG0sIHFsLCBtaW4obSwgcXIpKTsKICAgIHBhaXI8aW50LCBpbnQ+IHJpZ2h0ID0gcXVlcnkoMiAqIHYgKyAyLCBtLCByLCBtYXgobSwgcWwpLCBxcik7CiAgICByZXR1cm4gbWF4KGxlZnQsIHJpZ2h0KTsKfQoKdm9pZCB1cGRhdGUoaW50IHYsIGludCBsLCBpbnQgciwgaW50IHBvcykgewogICAgaWYgKHIgLSBsID09IDEpIHsKICAgICAgICB0clt2XS5maXJzdCA9IEFbbF07CiAgICAgICAgcmV0dXJuOwogICAgfQogICAgaW50IG0gPSAobCArIHIpIC8gMjsKICAgIGlmIChwb3MgPCBtKSB7CiAgICAgICAgdXBkYXRlKDIgKiB2ICsgMSwgbCwgbSwgcG9zKTsKICAgIH0gZWxzZSB7CiAgICAgICAgdXBkYXRlKDIgKiB2ICsgMiwgbSwgciwgcG9zKTsKICAgIH0KICAgIHRyW3ZdID0gbWF4KHRyWzIgKiB2ICsgMV0sIHRyWzIgKiB2ICsgMl0pOwp9CgppbnQgbWFpbigpCnsKICAgIGludCBuOwogICAgY2luID4+IG47CiAgICBBLnJlc2l6ZShuKTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgKytpKQogICAgICAgIGNpbiA+PiBBW2ldOwogICAgdHIucmVzaXplKDQqbik7CiAgICBidWlsZCgwLCAwLCBuKTsKICAgIGludCBrOwogICAgY2luID4+IGs7CiAgICB3aGlsZSAoayAtLT4gMCkgewogICAgICAgIGludCBsLCByOwogICAgICAgIGNpbiA+PiBsID4+IHI7CiAgICAgICAgbC0tOwogICAgICAgIHBhaXI8aW50LCBpbnQ+IGFucyA9IHF1ZXJ5KDAsIDAsIG4sIGwsIHIpOwogICAgICAgIGNvdXQgPDwgYW5zLmZpcnN0IDw8ICIgIiA8PCBhbnMuc2Vjb25kIDw8ICJcbiI7CiAgICB9CiAgICByZXR1cm4gMDsKfQo=