#include<iostream>
using namespace std;

int main(){
  while(1){
    int n,m,t,p;
    cin >> n >> m >> t >> p;
    if(n==0 && m==0 && t==0 && p==0){
      break;
    }

    int Ori[64][64] = {{0}};
    for(int y=0; y<m; y++){
      for(int x=0; x<n; x++){
        Ori[y][x] = 1;
      }
    }
    for(int i=0; i<t; i++){
      int d,c;
      cin >> d >> c;

      if(d==1){
        for(int x=0; x<c; x++){
          for(int y=0; y<m; y++){
            Ori[y][2*c-1-x] += Ori[y][x];
            Ori[y][x] = 0;
          }
        }
        for(int x=0; x<n; x++){
          for(int y=0; y<m; y++){
            Ori[y][x] = Ori[y][x+c];
            Ori[y][x+c] = 0;
          }
        }
      }
      else{
        for(int y=0; y<c; y++){
          for(int x=0; x<n; x++){
            Ori[2*c-1-y][x] += Ori[y][x];
            Ori[y][x] = 0;
          }
        }
        for(int y=0; y<m; y++){
          for(int x=0; x<n; x++){
            Ori[y][x] = Ori[y+c][x];
            Ori[y+c][x] = 0;
          }
        }
      }
    }
    for(int i=0; i<p; i++){
      int x,y;
      cin >> x >> y;

      cout << Ori[y][x] << endl;
    }
  }
  return 0;
}

