#include <bits/stdc++.h>
using namespace std;

int n,m,t,p,d,c,ls=0,bs=0,rs,us,x,y;
vector<int> ans;
int main(){
    for(int i=0;i<1000;i++){
        scanf("%d%d%d%d",&n,&m,&t,&p);
        if(n==0&&m==0&&t==0&&p==0)break;

        vector<int> hline(n,1);
        vector<int> vline(m,1);

        for(int k=0;k<t;k++){
            scanf("%d%d",&d,&c);
            if(d==1){
                vector<int> hl(n,0);
                int cnt=max(c,n-c);
                for(int l=0;l<cnt;l++)
                    hl[l]=(  (c-l-1<0)? 0 : hline[c-l-1] )+( (c+l>=n)?0:hline[c+l] );
                for(int l=0;l<n;l++)
                    hline[l]=hl[l];
            }else{
                vector<int> vl(m,0);
                int cnt=max(c,m-c);
                for(int l=0;l<cnt;l++)
                    vl[l]= ( (c-l-1<0)? 0 : vline[c-l-1] )+( (c+l>=m)?0:vline[c+l] );
                for(int l=0;l<m;l++)
                    vline[l]=vl[l];
            }
        }
        for(int k=0;k<p;k++){
            scanf("%d%d",&x,&y);
            ans.push_back(hline[x]*vline[y]);
        }
    }
    for(int i=0;i<ans.size();i++){
        printf("%d\n",ans[i]);
    }
    return 0;
}
