#include<bits/stdc++.h>
using namespace std;
int f1[100010][20],f2[100010][20];
long long x[100010],y[100010];
int main()
{
int n1,n2,q;;
cin>>n1>>n2>>q;
for(int i=1;i<=n1;i++)scanf("%d",&f1[i][0]);
for(int i=1;i<=n2;i++)scanf("%d",&f2[i][0]);
int p1=log(n1)/log(2);
for(int j=1;j<=p1;j++)
{
for(int i=1;i<=n1-(1<<j)+1;i++)
{
f1[i][j]=max(f1[i][j-1],f1[i+(1<<(j-1))][j-1]);
}
}
for(int i=1;i<=q;i++)
{
int l,r;
scanf("%d%d",&l,&r);
int p2=log(r-l+1)/log(2);
x[i]=max(f1[l][p2],f1[r-(1<<p2)+1][p2]);
}
int p11=log(n2)/log(2);
for(int j=1;j<=p11;j++)
{
for(int i=1;i<=n2-(1<<j)+1;i++)
{
f2[i][j]=max(f2[i][j-1],f2[i+(1<<(j-1))][j-1]);
}
}
for(int i=1;i<=q;i++)
{
int l,r;
scanf("%d%d",&l,&r);
int p22=log(r-l+1)/log(2);
y[i]=max(f2[l][p22],f2[r-(1<<p22)+1][p22]);
}
for(int i=1;i<=q;i++)
{
cout<<x[i]*y[i]<<endl;
}
return 0;
}