#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:50 ms
	Memory:2104 kb
****************************************************************/