#include<bits/stdc++.h>
using namespace std;
const int N(1005);
struct path{
int no;int num;
};
path r[N],c[N];
int ansr[N],ansc[N]={0};
bool comp(const path &x,const path &y)
{
return x.num>y.num;
}
bool comp2(const int &x,const int &y)
{
return x<y;
}
int main()
{
int m,n,k,l,d;
cin>>m>>n>>k>>l>>d;
for(int i=1;i<=m;i++)
{
r[i].no=i;
r[i].num=0;
}
for(int i=1;i<=n;i++)
{
c[i].no=i;
c[i].num=0;
}
int x,y,p,q;
for(int i=1;i<=d;i++)
{
cin>>x>>y>>p>>q;
if(x==p)
c[min(y,q)].num++;
if(y==q)
r[min(x,p)].num++;
}
sort(r+1,r+m+1,comp);
sort(c+1,c+n+1,comp);
for(int i=1;i<=k;i++) ansr[i]=r[i].no;
for(int i=1;i<=l;i++) ansc[i]=c[i].no;
sort(ansr+1,ansr+1+k,comp2);
sort(ansc+1,ansc+1+l,comp2);
cout<<ansr[1];
for(int i=2;i<=k;i++)
cout<<" "<<ansr[i];
cout<<endl;
cout<<ansc[1];
for(int i=2;i<=l;i++)
cout<<" "<<ansc[i];
cout<<endl;
return 0;
}
/**************************************************************
Problem: 2277
User: wangyichen2
Language: C++
Result: Accepted
Time:48 ms
Memory:2104 kb
****************************************************************/