#include<bits/stdc++.h>
using namespace std;
int n,m,q,a[100005],b[100005];
int read(){
long long res=0;
long long fl=1;
char ch=getchar();
while(!isdigit(ch)){
if(ch=='-') fl=-1;
ch=getchar();
}
while(isdigit(ch)){
res=res*10+ch-'0';
ch=getchar();
}
return fl*res;
}
void dfs(int l,int r){
if(l>r) return;
for(int i=l;i<=r;i++){
}
}
int main(){
n=read(),m=read(),q=read();
for(int i=1;i<=n;i++){
a[i]=read();
}
for(int i=1;i<=m;i++){
b[i]=read();
}
while(q--){
int l1=0,r1=0,l2=0,r2=0;
l1=read(),r1=read(),l2=read(),r2=read();
bool xf0=false;
bool hf0=false;
int xzmax=0,xzmin=2e9,xfmax=-2e9,xfmin=0;
int hzmax=0,hzmin=2e9,hfmax=-2e9,hfmin=0;
for(int i=l1;i<=r1;i++){
if(a[i]>0) xzmax=max(xzmax,a[i]);xzmin=min(xzmin,a[i]);continue;
if(a[i]<0) xfmax=max(xfmax,a[i]);xfmin=min(xfmin,a[i]);continue;
xf0=true;
}
for(int i=l2;i<=r2;i++){
if(b[i]>0) hzmax=max(hzmax,b[i]);hzmin=min(hzmin,b[i]);continue;
if(b[i]<0) hfmax=max(hfmax,b[i]);hfmin=min(hfmin,b[i]);continue;
hf0=true;
}
cout<<hzmax<<" "<<hfmax<<endl;
if(hzmax!=2e9&&hfmax==-2e9){//后手有正没负
if(xzmax==0&&xfmax!=-2e9){//先手没正有负
if(xf0==true){//先手有0
cout<<0<<endl;
continue;
}
cout<<xfmax*hzmax<<endl;//没有0
continue;
}
if(hf0==true){//后手有0
cout<<0<<endl;
continue;
}
if(xzmax!=2e9&&xfmax==-2e9){//先手有正没负
cout<<xzmax*hzmin<<endl;
continue;
}
if(xzmax!=2e9&&xfmax!=-2e9){//先手有负有正
cout<<xzmax*hzmin<<endl;
continue;
}
}
if(hzmax==2e9&&hfmax!=-2e9){//后手没正有负
if(xzmax!=0&&xfmax==-2e9){//先手有正没负
if(xf0==true){//先手有0
cout<<0<<endl;
continue;
}
cout<<xzmin*hfmin<<endl;//没有0
continue;
}
if(hf0==true){//后手有0
cout<<0<<endl;
continue;
}
if(xzmax==2e9&&xfmax!=-2e9){//先手没正有负
cout<<xfmin*hfmax<<endl;
continue;
}
if(xzmax!=2e9&&xfmax!=-2e9){//先手有正有负
cout<<xfmin*hfmax<<endl;
continue;
}
}
if(hzmax!=2e9&&hfmax!=-2e9){//后手有正有负
if(xf0==true){//先手有0
cout<<0<<endl;
continue;
}
if(xzmax!=0&&xfmax==-2e9){//先手有正没负
cout<<xzmin*hfmin<<endl;
continue;
}
if(xzmax==2e9&&xfmax!=-2e9){//先手没正有负
cout<<xfmax*hzmax<<endl;
continue;
}
if(xzmax!=2e9&&xfmax!=-2e9){//先手有正有负
int cnt1=xzmin*hfmin,cnt2=xfmax*hzmax;
cout<<max(cnt1,cnt2)<<endl;
continue;
}
}
}
return 0;
}