#include<cstdio>
#include<cmath>
#include<algorithm>
#include<iostream>
using namespace std;
long long INF=9000000005;
long long st1[100011][40];
long long st2[100011][40];
long long st3[100011][40];
long long st4[100011][40];
long long st5[100011][40];
long long st6[100011][40];
long long st7[100011][40];
long long st8[100011][40];
long long n,m,q,l1,l2,r1,r2;
long long a[100050],b[100050];
int main()
{
scanf("%lld%lld%lld",&n,&m,&q);
for(int i=1;i<=n;i++){
scanf("%lld",&a[i]);
}
for(int i=1;i<=m;i++){
scanf("%lld",&b[i]);
}
long long LCA1=(long long)(log(n)/log(2));
long long LCA2=(long long)(log(m)/log(2));
for(int j=0;j<=LCA1;j++){
for(int i=1;i<=n-(1<<j)+1;i++){
st1[i][j]=st3[i][j]=st5[i][j]=st7[i][j]=INF;
st2[i][j]=st4[i][j]=st6[i][j]=st8[i][j]=0-INF;
if(j==0){
st1[i][j]=a[i];
st2[i][j]=a[i];
if(a[i]>=0){
st3[i][j]=a[i];
}
if(a[i]<=0){
st4[i][j]=a[i];
}
}else{
st1[i][j]=min(st1[i][j-1],st1[i+(1<<(j-1))][j-1]);
st2[i][j]=max(st2[i][j-1],st2[i+(1<<(j-1))][j-1]);
st3[i][j]=min(st3[i][j-1],st3[i+(1<<(j-1))][j-1]);
st4[i][j]=max(st4[i][j-1],st4[i+(1<<(j-1))][j-1]);
}
}
}
for(int j=0;j<=LCA2;j++){
for(int i=1;i<=m-(1<<j)+1;i++){
if(j==0){
st5[i][j]=b[i];
st6[i][j]=b[i];
if(b[i]>=0){
st7[i][j]=b[i];
}
if(b[i]<=0){
st8[i][j]=b[i];
}
}else{
st5[i][j]=min(st5[i][j-1],st5[i+(1<<(j-1))][j-1]);
st6[i][j]=max(st6[i][j-1],st6[i+(1<<(j-1))][j-1]);
st7[i][j]=min(st7[i][j-1],st7[i+(1<<(j-1))][j-1]);
st8[i][j]=max(st8[i][j-1],st8[i+(1<<(j-1))][j-1]);
}
}
}
long long s1,s2,s3,s4,s5,s6,s7,s8;
for(int i=1;i<=q;i++){
scanf("%lld%lld%lld%lld",&l1,&r1,&l2,&r2);
long long k2=(long long)(log(r2-l2+1)/log(2));
long long k1=(long long)(log(r1-l1+1)/log(2));
s1=min(st1[l1][k1],st1[r1-(1<<k1)+1][k1]);
s2=max(st2[l1][k1],st2[r1-(1<<k1)+1][k1]);
s3=min(st3[l1][k1],st3[r1-(1<<k1)+1][k1]);
s4=max(st4[l1][k1],st4[r1-(1<<k1)+1][k1]);
s5=min(st5[l2][k2],st5[r2-(1<<k2)+1][k2]);
s6=max(st6[l2][k2],st6[r2-(1<<k2)+1][k2]);
s7=min(st7[l2][k2],st7[r2-(1<<k2)+1][k2]);
s8=max(st8[l2][k2],st8[r2-(1<<k2)+1][k2]);
if(s5<=0&&s6>=0){
cout<<max(s3*s5,s4*s6)<<endl;
}else if(s5<=0&&s6<=0){
if(s1<=0){
cout<<s1*s8<<endl;
}else{
cout<<s3*s5<<endl;
}
}else if(s5>=0&&s6>=0){
if(s2>=0){
cout<<s2*s7<<endl;
}else{
cout<<s4*s6<<endl;
}
}
}
return 0;
}